失效链接处理 |
Mybatis框架 mapper.xml文件中parameterType传递参数常用的几种方式 PDF 下载
本站整理下载:
相关截图:
![]()
主要内容:
Mybatis框架 mapper.xml文件中parameterType传递参数常用的几种方式
1、使用依次顺序传参
2、使用@Param注解传参
3、使用HashMap传参
4、使用Java Bean传参
//#{}里面的数字代表传入参数的顺序 public User queryUser(String userName, int passWord); <select id="queryUser" resultMap="BaseResultMap"> select * from user where user_name = #{0} and pass_word = #{1} </select> //#{}里面的名称为注解@Param括号里面修饰的名称 public User queryUser(@Param("userName") String userName, int @Param("passWord") passWord); <select id="queryUser" resultMap="BaseResultMap"> select * from user where user_name = #{userName} and pass_word = #{passWord} </select> //#{}里面的名称为Map里面的key名称 HashMap <String,Object> map=new HashMap<String,Object>(); map.put("userName","userName"); map.put("password","password"); public User queryUser(Map<String, Object> map); <select id="queryUser" parameterType="java.util.Map" resultMap="BaseResultMap"> select * from user where user_name = #{userName} and pass_word = #{passWord} </select>
5、使用List传参
6、使用数组传参
7、mybatis中的#和$的区别
//#{}里面的名称为User类里面的成员属性 User user=new User(); user.setUserName("userName"); user.setPassword("passWord"); public User queryUser(User user); <select id="queryUser" parameterType="com.example.User" resultMap="BaseResultMap"> select * from user where user_name = #{userName} and pass_word = #{passWord} </select> List<UserInfo> selectList( List<String> userIds); <select id="selectList" resultMap="BaseResultMap"> select * from user_info where status=1 and user_id in <foreach collection="list" item="item" open="(" separator="," close=")" > #{item} </foreach> </select> List<UserInfo> selectList( String[] userIds); <select id="selectList" resultMap="BaseResultMap"> select * from user_info where status=1 and user_id in <foreach collection="array" item="item" open="(" separator="," close=")" > #{item} </foreach> </select> //#将传入的数据当成一个字符串,会对自动传入的数据加一个双引号 //$将传入的数据直接显示生成在sql中 //#方式能够很大程度防止sql注入 //$方式无法防止Sql注入 //$方式一般用于传入数据库对象,例如传入表名 //一般能用#的就别用$ //MyBatis排序时使用order by 动态参数时需要注意,用$而不是#
|