La première étape consiste à implémenter l'interface TypeHandler <T>
@MappyJdbCTypes (jdbcType.timestamp) // Si cette annotation n'est pas utilisée ici, vous devez écrire jdbcType = "TimeStamp" @MappyPes (DateTime.class) // Si cette annotation n'est pas utilisée ici, vous devez écrire javatype.Daty DateTimeHandler implémente TypeHandler <DateTime> {Étape 2 Registre de type Handleur
Il y a deux façons de s'inscrire
L'un est une inscription unique
<TypeHandlers> <TypeHandler handler = "com. ***. DatAtimeTypeHandler" javatype = "[ljava.lang.string;" jdbcType = "varchar" /> </ typeHandlers>
L'un est l'inscription par lots
<mappers> <mapper ressource = "com / tiantian / mybatis / mapper / userMapper.xml" /> <package name = "com.tiantian.mybatis.mapperInterface" /> </mappers>
Si la deuxième méthode d'enregistrement est utilisée, les déclarations de JDBCTYPE et Javatype ne peuvent être définies que par annotation
Étape 3: Utilisation:
1. Définition du champ de jeu de résultats de requête
<resultMap id = "userresult" type = "user"> <id colonnen = "id" propriété = "id" /> <result Column = "Interest" propriété = "Interests" javatype = "[ljava.lang.string;" jdbcType = "varchar" /> </ resultmap>
ou
<resultMap id = "userresult" type = "user"> <id chronn = "id" propriété = "id" /> <résultat chronn = "intéresse" propriété = "intéresse" typeHandler = "com.tiantian.mybatis.handler.stringArrayTypeHandler" /> </ ResultMap>
Autrement dit, si la classe TypeHandler est directement spécifiée, vous n'avez pas besoin d'écrire javatype et jdbcType, même si vous écrivez MyBatis, vous n'en avez pas besoin.
2. Passez les paramètres et interrogez-les ou modifiez-les
<if test = "txlogstatus! = null"> txlogstatus = # {txLogStatus, typeHandler = com.rrcp.util.typehandlers.eventStatustyTypeHandler}, </ if>De même, le type de type ici peut également être remplacé par JDBCTYPE et Javatype
Résumer:
Essayez de le garder cohérent ou de l'écrire intact lors de l'enregistrement et de l'utilisation. S'il n'est pas unifié, le type de type correspondant ne sera pas trouvé et l'erreur sera signalée. Notre objectif est d'utiliser correctement le mécanisme de traitement TypeHandler. Nous ne voulons pas nous plonger dans l'algorithme utilisé par Mybatis dans l'inscription et la recherche, tant que cela réussit. Si vous avez du temps et que vous avez du temps, vous pouvez étudier les conséquences causées par l'enregistrement des attributs moins. Cependant, si vous les étudiez soigneusement, la prochaine version de MyAbtis sera peut-être modifiée.
Ce qui précède est le processus en trois étapes d'implémentation d'un type de type personnalisé pour mybatis que je vous ai présenté. J'espère que cela vous sera utile. Si vous avez des questions, veuillez me laisser un message et l'éditeur vous répondra à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!