一、输入映射
通过parameterType指定输入参数的类型,可以是简单类型、pojo包装类、HashMap等
1、输入简单类型
<select id="findUserById" parameterType="int" resultType="com.mybatis.po.User">
select * from user where id=#{id}
</select>
2、输入pojo包装类
<select id="findUserById" parameterType="om.mybatis.po.User" resultType="com.mybatis.po.User">
select * from user where username like ‘%{user.username}%’
</select>
Pojo类可根据业务需求,创建某单一实体的扩展实体,User类的扩展类-User和订单实体的综合实体。
3、输入HashMap类型
<select id="findUserById" parameterType="hashmap" resultType="com.mybatis.po.User">
select * from user where id=#{id} and username like ‘%{username}%’
</select>
参数id 和username 对应hashmap中的key-value
二、输出映射
1、resultType类型输出
使用resultType进行输出映射,只有查询出来的列名和pojo中的属性名一致,该列才可以映射成功。适用于单表查询,级联查询时使用该类型输出需要重新创建关联pojo扩展类进行映射。
如果查询出来的列名和pojo中的属性名全部不一致,就不会创建该pojo对象。只要查询出来的列名和pojo中的属性有一个一致,就会创建pojo对象。映射失败的查询字段返回为空。
2、resultMap类型输出