Mybatis sql映射parameterType设置
2019-06-27 本文已影响0人
开发猛男
1. 基本类型
传入基本类型时,占位符 #{ } 中内容 可以随意设置。
但是移位符 ${ } 中必须填写value ,否则报错
<select id="getUserById" parameterType="java.lang.Integer" resultType="com.itheima.pojo.User">
select * from user where id = #{id}
</select>
<select id="getUsersByName2" parameterType="java.lang.String" resultType="com.itheima.pojo.User">
select * from user where name like ${value}
</select>
2. pojo对象
当传入参数有多个时,将其封装到对应的对象一并传入,#{} 或 ${} 中为pojo属性名。
<insert id="addUser" parameterType="com.itheima.pojo.User" >
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
select LAST_INSERT_ID();
</selectKey>
insert into user(name,sex) values(#{name},#{sex})
</insert>
3. pojo的包装类
定义一个vo类,里面包含待传入的pojo,#{} 或 ${} 中为 pojo.属性
vo类需要提供get/set方法
public class QueryVo {
private User user;
private List<Integer> ids;
// get / set
}
<select id="getUsersByName" parameterType="com.itheima.vo.QueryVo" resultType="com.itheima.pojo.User">
select * from user where name like '%${user.name}%'
</select>