Mybatis的mapper.xml配置详细信息
前言
本人在开发法务系统中所学习到的,不足之处还请多多指教。
提示:以下是本篇文章正文内容,下面案例可供参考
一、mapper.xml是什么?
namespace——指定Mapper接口。
resultMap —— 映射类,指定show类或者实体类。
注: resultType ——指定返回类型 例:resultType = Java.lang.Integer 则返回类型为Integer类型。
用法:查询多个值用 resultMap指定映射类。
查询单个值用 resultType指定返回类型。
id —— 映射别名。
可配置多个resultMap 指定映射。
注意:映射类需与接收类一致,否则会报show类与实体类无法转换异常。
二、使用步骤
SELECT company_id,our_person,our_contact,ourosite_email,order_no ,our_store_name FROM t_lawcase_our_party
where 1=1 and is_enable = '1'
<if test="orderNo!=null and orderNo !=''">
and order_no = #{orderNo}
</if>
</select>
**resultMap** : 指定映射对象。
注意:SQL语句写法需遵从Mybatis 语句写法。**JPA**写法在此不通用。
![在这里插入图片描述](https://img-blog.csdnimg.cn/2020082509572311.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTIxMjY2MA==,size_16,color_FFFFFF,t_70#pic_center)
当SQL语句需要IN多个值时,需要用到**<foreach> 标签**,Mybatis 无法用IN()这种JPA写法。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200825100201877.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTIxMjY2MA==,size_16,color_FFFFFF,t_70#pic_center)
**collection**:指定集合名字
**item** : 别名。(**注意后面SQL语句写法是IN 别名 ,而不是集合名字!!!**)
**separator** :集合以什么方式隔开(逗号或者其他)
**@Param("deptIdList") :SQL 语句参数别名。SQL根据条件查询时需用到该注解**。
# 总结
1.mybatis 一定要注意SQL语句写法与映射类型,是使用resultMap 还是使用resultType。
2.![在这里插入图片描述](https://img-blog.csdnimg.cn/20200825103352591.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTIxMjY2MA==,size_16,color_FFFFFF,t_70#pic_center)指定对应的mapper接口