文档章节

MyBatis 传递多个参数

凯文加内特
 凯文加内特
发布于 2013/07/29 09:13
字数 177
阅读 3594
收藏 3

在MyBatis中可以用以下的方式来传递多个参数

1. 用java.util.Map来传递, Code 如下:

public List<User> getAllUsersByUserName(String username, int start, int limit){
    Map<String,Object> params = new HashMap<String, Object>(3);
    params.put("username",username);
    params.put("start",start);
    params.put("limit",limit);
    return userMapper.getAllUsersByUserName(params);
  }

对应的XXMapper.xml文件中如下:


<select id="getAllUsersByUserName" parameterType="map" resultType="User">
        SELECT u.* FROM User u WHERE u.username LIKE #{username} '%' LIMIT #{start}, #{limit}
 </select>


2. 用JavaBean的方式来传递, Code如下:

public List<User> getUsersByUserName(String username){
    User user = new User();
    user.setUsername(username);
    return userMapper.getUserByUsername(user);
  }

对应的XXMapper.xml文件中如下:

<select id="getAllUsersByUserName" parameterType="User" resultType="User">
        SELECT u.* FROM User u WHERE u.username = #{username} 
 </select>

 3.使用@Param这个注解,对应的XXMapper.xml文件同上

List<User> getAllUsersByUserName(@Param("username")String name, @Param("start")Integer start, @Param("limit")Integer limit);

本文转载自:http://blog.163.com/mr_liuyong/blog/static/123424376201282851251999/

共有 人打赏支持
凯文加内特
粉丝 337
博文 674
码字总数 98608
作品 0
青岛
后端工程师
私信 提问
加载中

评论(1)

i
itxx2016
推荐国内最流行的iBatis、MyBatis代码生成网站: fwjava.com
网站在线生成,操作极其简单,生成的代码十分规范好用,经历过实战的主流代码啊.
现在,大多数知名的互联网公司都在用它.
springMVC 接收数组参数,mybatis 接收数组参数,mybatis批量插入/批量删除案例

案例是给一个用户赋予多个权限,多个权限用其对应的主键 id 为参数,组成了 一个id数组,传给springMVC,然后springMVC传给mybatis,然后mybatis批量插入。其实类似的场景还有批量删除多个,...

清城北苑
2016/07/20
0
0
MyBatis多对多保存示例——MyBatis学习笔记之十七

前几天有网友问到MyBatis多对多的问题,不过愧对网友厚爱的是,最近一直忙,直到现在才有时间处理此事。今天就先写一个多对多保存的示例,算是对这位网友的初步回应,以后会有更多相关的博文...

NashMaster2011
2013/08/11
0
0
Mybatis 通用 Mapper 3.5.2 发布

Mybatis 通用 Mapper 3.5.2 已发布。MyBatis 通用 Mapper 极其方便的使用 MyBatis 单表的增删改查,支持单表操作,不支持通用的多表联合查询。通用 Mapper 可以极大的方便开发人员。可以随意...

Liuzh_533
01/24
2.1K
9
Mybatis 映射文件配置

Mybatis参数传递和取值详情: 单个参数:Mybatis不会做特殊处理, #{参数名/任意名}:取出参数值。 多个参数:mybatis会做特殊处理。 1.多个参数会被封装成 一个map, 封装: key:paramName...

特拉仔
01/20
0
0
MyBatis中如何通过继承SqlSessionDaoSupport来编写DAO(二)

(本文示例工程源代码下载地址:http://down.51cto.com/data/1975295) 在上一篇博文的最后,介绍了使用@PostConstruct注解标注StudentDao的init方法,这样在Spring完成依赖注入后此方法即会...

NashMaster2011
2015/01/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

深入解析ES6之数据解构的用法

本文介绍了深入理解ES6之数据解构的用法,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 一 对象解构 对象解构语法在赋值语句的左...

前端攻城老湿
14分钟前
5
0
芯片原理和量子力学

很多文盲觉得量子力学只是一个数学游戏,没有应用价值,呵呵,下面咱给计算机芯片寻个祖宗,请看示范: 导体,咱能理解,绝缘体,咱也能理解,小盆友们第一次被物理整懵的,怕是半导体了,所...

天王盖地虎626
14分钟前
2
0
Django model update的各种用法介绍

Django model update的各种用法介绍 model update常规用法 假如我们的表结构是这样的: class User(models.Model): username=models.CharField(max_length=255,unique=True,verbose_na......

_Change_
17分钟前
1
0
Frost & Sullivan权威报告:阿里云再次领跑云WAF大中华区市场

近日,国际权威分析机构Frost & Sullivan 针对Web应用防火墙(简称“WAF”)领域发布了《2017年亚太区Web应用防火墙市场报告》,阿里云以市场占有率45.8%的绝对优势连续两年领跑大中华区云WAF...

阿里云官方博客
22分钟前
1
0
Java程序员可知为何公司宁花25K重新招人,也不花20K留住老员工?

身在职场,经常会暗自打听同事工资,尤其是得知身边新入职同事的工资居然比自己高,还高出一大截时,心里自然很不平衡,一心想要离职。 那么,为什么公司宁愿花高价招聘新员工也不愿意给老员...

Java填坑路
28分钟前
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部