推荐的MyBatis传参方式List、数组等

637 阅读1分钟

MyBatis 推荐的传参方式[常用]

如果要详细的学习 MyBatis,推荐看这个教程:https://www.w3cschool.cn/mybatis/

1. 单个参数

//接口方法
int getAgeById(Integer id);
//xml映射文件
<select id="getAgeById" resultType="Integer">
    select age from user where user_id = #{id}
</select>

2. 多个参数

//接口方法
 User login(@Param("username") String username, @Param("password") String password);
 //xml映射文件
 <select id="login" resultMap="BaseResultMap">
    select
    *
    from user
    where username = #{username} and password = #{password}
</select>

3. 数组参数

//接口方法
ArrayList<User> selectByIds(Integer [] ids);
//xml映射文件
<select id="selectByIds" resultMap="BaseResultMap">
    select
    *
    from user where id in
    <foreach item="item" index="index" collection="array" open="(" separator="," close=")">
        #{item}
    </foreach>
</select>

4.List参数

//接口方法
ArrayList<User> selectByIds(List<Integer> ids);
//xml映射文件
<select id="selectByIds" resultMap="BaseResultMap">
	Select
	<include refid="Base_Column_List" />
	from jria where ID in
	<foreach item="item" index="index" collection="list" open="(" separator="," close=")">
		  #{item}
	  </foreach>
  </select>