mybati之parameterType传递多个参数
Posted wangchuanfu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybati之parameterType传递多个参数相关的知识,希望对你有一定的参考价值。
当在查询的时候需要传入多个参数的时候该怎么办呢:shiyong
1,封装成一个Model对象,底层HashMap还是一个
2,使用HashMap封装
3,使用注解,@param
queryUserByuserNameAndPass(String userName,String PassWord); //返回值类型为Usre
//sql
<select id="queryUserByuserNameAndPass" resultType="User">
select * from user u where u.user_name=#{userName} and u.pass_word=#{passWord}//会报错的
</select>
改为如下:
<select id="queryUserByuserNameAndPass" resultType="User">
select * from user u where u.user_name=#{0} and u.pass_word=#{1}//运行成功但是,可读性不高
</select>
//使用HashMap定义:
HashMap <String,Object> map=new HashMap<String,Object>();
map.put("userName","zhangsan");
map.put("password","123456");
queryUserByuserNameAndPass(map);//为返回值类型为User
//sql 如下:
<select id="queryUserByuserNameAndPass" resultType="User">
select * from user u where u.user_name=#{userName} and u.pass_word=#{passWord}//
</select>
ibati用HashMap封装是sql如下:
<select id="queryUserByuserNameAndPass" parameterClass="java.util.HashMap" resultType="User">
select * from user u where u.user_name=#{userName} and u.pass_word=#{passWord}
</select>
以上是关于mybati之parameterType传递多个参数的主要内容,如果未能解决你的问题,请参考以下文章
Mybatis (ParameterType) 如何传递多个不同类型的参数
mybatis传参包含字符串和日期,parametertype写啥