MyBatis传入多个参数的问题

目录

方式一、顺序传递参数

方式二、注解@Param传递参数

方式三、使用Map集合传递参数

方式四、使用JavaBean实体类传递参数

方式一、顺序传递参数

mapper.java文件:

publicUserselectUser(String name,intdeptId);

1

mapper.xml文件:

<selectid="selectUser"resultType="com.wyj.entity.po.User">select * from user where userName = #{0} and deptId = #{1}</select>

1

2

3

注意:里面的数字代表你传入参数的顺序,不是特别建议使用这种方法传递参数,特别是参数个数多的时候

方式二、注解@Param传递参数

mapper.java文件:

publicUserselectUser(@Param("userName")String name,int@Param("deptId")id);

1

mapper.xml文件:

<selectid="selectUser"resultType="com.wyj.entity.po.User">select * from user where userName = #{userName} and deptId = #{deptId}</select>

1

2

3

注意:在xml文件中就只能以在@Param注解中声明的参数名称获取参数

方式三、使用Map集合传递参数

mapper.java文件:

publicUserselectUser(Map<String,Object>params);

1

mapper.xml文件:

<selectid="selectUser"parameterType="java.util.Map"resultType="com.wyj.entity.po.User">select * from user where userName = #{userName} and deptId = #{deptId}</select>

1

2

3

方式四、使用JavaBean实体类传递参数

mapper.java文件:

publicUserselectUser(User user);

1

mapper.xml文件:

<selectid="selectUser"parameterType="com.wyj.entity.po.User"resultType="com.wyj.entity.po.User">select * from user where userName = #{userName} and deptId = #{deptId}</select>

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

推荐阅读更多精彩内容