Mybatis传递多个参数
Posted 低调的狗狗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis传递多个参数相关的知识,希望对你有一定的参考价值。
方案一
Dao层的函数方法
1 Public User selectUser(String name,String area);
对应的Mapper.xml
1 <select id=" selectUser" resultMap="BaseResultMap"> 2 select * from user_user_t where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR} 3 </select>
其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。
方案二(Map传值)
Dao层的函数方法
1 Public User selectUser(Map paramMap);
对应的Mapper.xml
1 <select id=" selectUser" parameterType="map" resultMap="BaseResultMap"> 2 select * from user_user_t where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR} 3 </select>
Service层调用
1 Private User xxxSelectUser(){ 2 Map paramMap = new hashMap(); 3 paramMap.put(“userName”,”对应具体的参数值”); 4 paramMap.put(“userArea”,”对应具体的参数值”); 5 User user=xxx. selectUser(paramMap); 6 }
方案三(推荐)
Dao层的函数方法
1 Public User selectUser(@Param(“userName”) String name,@Param(“userArea”) String area);
对应的Mapper.xml
1 <select id=" selectUser" parameterType="map" resultMap="BaseResultMap"> 2 select * from user_user_t where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR} 3 </select>
以上是关于Mybatis传递多个参数的主要内容,如果未能解决你的问题,请参考以下文章