[JAVA] Mon histoire de Batis

Mon histoire de Batis

Mémorandum grosso modo comme d'habitude

Précautions lors de la liaison avec Spring

La destination de la connexion à la base de données utilise les paramètres de la source de données lorsque MapperScan a enregistré le bean dans le conteneur DI. Notez que même si vous changez le transactionManager de @Transactional, vous n'irez pas vous connecter au DB de la source de données définie par le transactionManager commuté.

Dans le cas où la structure de la table est exactement la même mais seule la destination de la connexion à la base de données est différente (lorsque vous préparez deux sources de données et que vous voulez accéder à chacune individuellement), MapperScan pour la source de données 1 et MapperScan pour la source de données 2 doivent être préparés, et sessionFactoryRef et nameGenerator doivent être spécifiés séparément pour l'une des sources de données.

nameGenerator est requis pour éviter que le nom du bean généré ne soit couvert.

Spécifiez le nom du bean lorsque DI (en cas de câblage automatique)

Présentation du développement d'applications Web à l'aide de MyBatis

https://www.slideshare.net/tokuhirom/mybatis-web-application

eclipse plugin Eclipse Marketplace> Mybatipse C'est quasiment indispensable car la complétion sera efficace lors de l'écriture xml.

Utilisation facile à comprendre

Définir les propriétés de l'entité qui sera le relais dans la classe d'entité et la cartographier sera quelque peu sensuel. .. ??

Appelez la définition (resultMap, etc.) décrite dans un autre xml

http://kamatama41.hatenablog.com/entry/20130409/1365483365

Généré automatiquement

Utiliser le remplacement de colonne pour la prise en charge d'énumération http://blog.zaq.ne.jp/oboe2uran/article/1180/ http://tech-blog.tsukaby.com/archives/205

Lors de l'utilisation du plugin, ajoutez un projet de classe Plugin en cliquant avec le bouton droit de la souris sur generatorConfig.xml> Configuration de l'exécution> Chemin de la classe> Ajouter un projet>

Spécification du code de caractère du fichier java de sortie

<context>
    <property name="javaFileEncoding" value="UTF-8" />
~
</context>

Protéger les champs des entités générées automatiquement

Voir FieldVisibilityProtectedPlugin.java et myBaitsGeneratorConfig.xml dans l'exemple de code

TypeHandler pour LocalDateTime

https://github.com/javaplugs/mybatis-types

Désactiver le cache

http://www.mybatis.org/mybatis-3/ja/configuration.html Cache des paramètres

Par défaut, le cache fonctionne, donc 1 transaction? Même si je lance la requête qui est exécutée une fois dans (j'ai oublié l'unité détaillée), elle ne va pas à la base de données.

MyBatisGenerator n'écrase pas le fichier java (si vous le définissez pour écraser, il effacera le code autre que @mbggenerated)

Si vous insérez le plug-in eclipse et que vous l'utilisez, l'écrasement fonctionne bien.

Voir ci-dessous pour l'emplacement du plugin http://www.mybatis.org/generator/running/runningWithEclipse.html

Je veux frapper SQL brut avec MyBatis

http://qiita.com/kumazo@github/items/72ecdb2923b77aaa0c94

[Java] Améliorez les performances avec MyBatis Dynamic SQL

http://atuweb.net/201602_java-mybatis-dynamic-and-fast-sql/

Recommended Posts

Mon histoire de Batis
Mon mémorandum Batis
Désactiver le cache MyBatis3
Histoire statique Java
Comparaison des chaînes MyBatis
BigDecimal.valueOf (double) histoire
Histoire abattue (mémorial)
L'histoire de l'initialiseur Java
Histoire générique Java