Mybatis sql映射parameterType设置

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>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容