Mybatis 传入多个参数查询数据 (3种方法)

转载 2015年11月20日 16:34:07

据我目前接触到的传多个参数的方案有三种。




第一种方案 

 DAO层的函数方法 
public User selectUser(String name,String area);

对应的Mapper.xml  
<select id="selectUser" resultMap="BaseResultMap">
    select  *  from user_user_t   where user_name = #{0} and user_area=#{1}
</select>
其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。



第二种方案  此方法采用Map传多参数.

Dao层的函数方法
public User selectUser(Map paramMap);

对应的Mapper.xml
<select id="selectUser" resultMap="BaseResultMap">
   select  *  from user_user_t   where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR}
</select>

Service层调用

public User xxxSelectUser(){
	Map paramMap=new hashMap();
	paramMap.put(“userName”,”对应具体的参数值”);
	paramMap.put(“userArea”,”对应具体的参数值”);
	User user=xxx.selectUser(paramMap);
}

个人认为此方法不够直观,见到接口方法不能直接的知道要传的参数是什么。


第三种方案

Dao层的函数方法
public User selectUser(@Param("userName")String name,@Param("userArea")String area);

对应的Mapper.xml
<select id="selectUser" resultMap="BaseResultMap">
   select  *  from user_user_t   where user_name = #{userName,jdbcType=VARCHAR} and user_area=#{userArea,jdbcType=VARCHAR}
</select> 

个人觉得这种方法比较好,能让开发者看到dao层方法就知道该传什么样的参数,比较直观,个人推荐用此种方案。


转载自: http://www.2cto.com/database/201409/338155.html

mybatis 将sql写在java代码中

第一部分:Common.xml  (mybatis sql执行文件  这里通过java传参形成sql语句) 下面包含各种传参查询和传入sql语句进行查询(注入问题在java中进行处理)添加和...

MyBatis传入多个参数,传入数组和列表数据的处理

java定义: List selectByRoleIdList(@Param("roles")String[] roles); List selectByRoleIdList1(@P...
  • mlz_2
  • mlz_2
  • 2016年11月01日 11:52
  • 6790

Mabatis传多个参数

Mabatis传多个参数 方案一: PublicUser selectUser(String name,String area)     select *  ...

mybatis 关联查询 含有集合的嵌套查询 并传多个参数

mybatis 关联查询 含有集合的嵌套查询 并传多个参数

MySQL查询:查询一个表中类别字段中Max()最大值对应的记录

问题是: 数据库有一个表 code,里面有个点击量字段click_num和一个类别字段kind以及其它信息字段, 现在要搜出每个类别中点击量最大的那条记录,如果是10个类别,那么结...
  • HX_lei
  • HX_lei
  • 2016年03月15日 17:45
  • 18754

mybatis 的条件查询的三个方法实现

Mybatis的多条件查查询,传递参数, 第一种方法 传递map 型, 第二种方法 传递pojo  带三种方法 多个参数如果不封装成Map,就用序列号代替。 如果参数比较多且乱建议用map ...

Mybatis传多个参数(三种解决方案)

据我目前接触到的传多个参数的方案有三种。 第一种方案  DAO层的函数方法  ? 1 Public User selectUse...
  • yipanbo
  • yipanbo
  • 2015年09月21日 11:25
  • 3686

select 同时传递多个值

在option的value中用逗号分开,例如下边的例子,后台接收之后,用String的split()方法分割成数组 前台代码:                     ...

Mybatis 传入多个参数的方法

1.由于是多参数那么就不能使用parameterType, 改用#{index}是第几个就用第几个的索引,索引从0开始 UPDATE ams_user SET log...

Mybatis查询部分字段

解决问题:数据库表里面很多字段不太需要,有时只想取到里面的部分字段的值,如果重新定义 DTO 会比较麻烦。BookMapper.xml 文件中定义如下: ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Mybatis 传入多个参数查询数据 (3种方法)
举报原因:
原因补充:

(最多只允许输入30个字)