MyBatis传递多个参数

来源:互联网 发布:labview串口数据采集 编辑:程序博客网 时间:2024/05/20 17:59

MyBatis传递多个参数


1:参数所在下标

下标从0开始,依次对应方法中参数所在的位置
<select id="findByIndexParams" resultMap="userMap">select *from t_userwhere user_name = #{0} and user_sex = #{1} and user_status = #{2}</select>
测试代码:
// UserMapper.javaList<User> findByIndexParams(String name, Integer sex, Integer status);// 测试List<User> userList = userMapper.findByIndexParams("小明", 1, 1);

2:Map方式

不推荐这种方式,看不到内容传递的参数。可以使用实体类或者@param注解
<select id="findByMapParams" parameterType="map" resultMap="userMap">select *from t_userwhere user_name = #{name} and user_sex = #{sex} and user_status = #{status}</select>
测试代码:
// UserMapper.javaList<User> findByMapParams(Map<String, Object> params);// 测试Map<String, Object> params = new HashMap<>();params.put("name", "小明");params.put("sex", 1);params.put("status", 1);List<User> userList = userMapper.findByMapParams(params);

3:@Param注解

<select id="findByAnnoParams" resultMap="userMap">select *from t_userwhere user_name = #{name} and user_sex = #{sex} and user_status = #{status}</select>
测试代码:
// UserMapper.javaList<User> findByAnnoParams(@Param("name") String name, @Param("sex") Integer sex,@Param("status") Integer status);// 测试List<User> userList = userMapper.findByAnnoParams("小明", 1, 1);




原创粉丝点击