1. Principe de fonctionnement de Mybatis
2. Enquête
<select id="方法名" parameterType="方法参数类型" resultType="方法返回值类型,全类名" >
select 表中字段名 AS 结果字段名 from 表名 where 条件
<!--注意:结果字段名与属性名保持一致,区分大小写-->
</select>
3. Insérer
<insert id="需要实现的接口里的方法名" parameterType="方法参数名,如果是对象,要写全类名">
insert into 表名 (字段1,字段2,...) values(#{参数1},#{参数2},...)
<!--注意属性名区分大小写-->
</insert>
4. Modifier
<update id="updateCustomer" parameterType="com.wang.po.Customer">
update t_customer set username=#{username},jobs=#{jobs}
,phone=#{phone} where id=#{id}
</update>
5. Supprimer
<delete id="deleteCustomer" parameterType="Integer">
delete from t_customer where id=#{id}
</delete>
Analyse 6.resultType (j'ai rencontré ce problème lorsque j'ai écrit pour la première fois)
1. Type de base: resultType = type de base
2. Type de liste: resultType = type d'éléments dans List
3. type de carte: enregistrement unique: resultType = map
Enregistrements multiples = type de valeur dans la carte
4. Type d'objet: resultType = nom complet de la classe de l'objet
7. Traitement des paramètres
1. Paramètre unique: utilisez directement # {nom du paramètre} pour la valeur, mybatis n'a pas de traitement spécial, le nom du paramètre peut être écrit avec désinvolture
2. Paramètres multiples: utilisez # {paramètre}, # {param2} pour prendre la valeur
3. Paramètres nommés: utilisez @param ("clé") pour spécifier la clé dans la mappe de package, puis vous pouvez obtenir la valeur du paramètre via # {clé}
4. POJO: Si plusieurs paramètres se trouvent être le modèle commercial, vous pouvez alors passer le modèle commercial à ce stade, vous pouvez obtenir la valeur via # {nom de la propriété}
5.Carte: si plusieurs paramètres ne sont pas des modèles commerciaux et ne sont pas utilisés fréquemment, vous pouvez personnaliser la carte à transmettre
6. TO: si plusieurs paramètres ne sont pas des modèles commerciaux et sont fréquemment utilisés, vous pouvez personnaliser un TO pour transférer des objets.
Référence: traitement des paramètres mybatis
8. La différence entre # {} et $ {}
1. # {} est un processus de pré-compilation et $ {} est un remplacement de chaîne.
2. Lorsque Mybatis traite # {}, il remplacera # {} dans sql par un?, Et appellera la méthode set de PreparedStatement pour assigner la valeur
3. Lorsque Mybatis traite $ {}, il remplace $ {} par la valeur de la variable.
4. L'utilisation de # {} peut empêcher efficacement l'injection SQL et améliorer la sécurité du système.