MyBatis案例六:多参数处理

MyBatis案例六:多参数处理

  1. 使用注解@Param(“参数名”)
public List<Emp> find(@Param("ename") String ename,@Param("job")String job);

mapper中:

<select id="find" resultType="com.neu.domain.Emp">
		select * from emp where ename = #{ename} and job = #{job}
</select>
  1. 使用参数索引号,从0开始,或参数名:从param1开始
public List<Emp> find(String ename,String job);

mapper中:

<select id="find" resultType="com.neu.domain.Emp">
	select * from emp where ename = #{0} and job = #{1}
</select>

<select id="find" resultType="com.neu.domain.Emp">
	select * from emp where ename = #{param1} and job = #{param2}
</select>
  1. 使用Map集合传递,键为引用名,值为要传递的值
public List<Emp> find(Map<String, String> params);

mapper中:

<select id="find" resultType="com.neu.domain.Emp">
		select * from emp where ename = #{ename} and job = #{job}
</select>

测试代码中:

Map<String, String> params = new HashMap<String, String>();
		params.put("ename","JONES");
		params.put("job", "MANAGER");
		List<Emp> list = empMapper.find(params);
  1. 使用实体类,把参数封装到实体类中,属性明与引用名相同即可(如果为此新创建一个实体类,不推荐使用)

猜你喜欢

转载自blog.csdn.net/pcbhyy/article/details/83715480