1、第一种: DAO 层的函数

public UserselectUser(String name,String area);
对应的 xml,#{0}代表接收的是 dao 层中的第一个参数,#{1}代表 dao 层中第二参数,更多参数一致往后加即可。
<select id="selectUser"resultMap="BaseResultMap"> select *   fromuser_user_t whereuser_name = #{0}
anduser_area=#{1}
</select>

2、第二种: 使用 @param注解:

public interface usermapper {
user selectuser(@param(“username”) string username,@param(“hashedpassword”) string hashedpassword);
}

然后,就可以在 xml 像下面这样使用(推荐封装为一个 map,作为单个参数传递给mapper):

<select id=”selectuser” resulttype=”user”> select id, username, hashedpassword from some_table
where username = #{username}
and hashedpassword = #{hashedpassword}
</select>

3、第三种: 多个参数封装成 map

try {
//映射文件的命名空间.SQL 片段的 ID,就可以调用对应的映射文件中的
SQL
//由于我们的参数超过了两个,而方法中只有一个 Object 参数收集,因此我们使用 Map 集合来装载我们的参数
Map < String, Object > map = new HashMap(); map.put("start", start);
map.put("end", end);
return sqlSession.selectList("StudentID.pagination", map);
} catch (Exception e) { e.printStackTrace(); sqlSession.rollback(); throw e;
} finally {
MybatisUtil.closeSqlSession();

在 mapper 中如何传递多个参数?相关推荐

  1. 【学习笔记】MyBatis中接口中方法传递多个参数问题展示与解决

    问题展示 编写Mapper接口 public interface ProductsDao {public Products findById(int i);public void deleteById ...

  2. wxpython是什么_请问wxpython中 event传递的什么参数?

    最近捣鼓Python,也就自然捣鼓上了wxPython.我曾经用过Qt和Gtk+写GUI,但几乎所有的Python书都告诉我说最好用的是wxPython,我没有尝试PyQt和PyGtk就开始研究wxP ...

  3. mybatis常见问题处理:批量操作,传递多个参数,like语句写法等等

    1.当实体类中的属性名和表中的字段名不一样 解决办法①:  通过在查询的sql语句中定义字段名的别名,让字段名的别名和实体类的属性名一致  <select id="selectorde ...

  4. MyBatis中动态sql实现传递多个参数并使用if进行参数的判断和实现like模糊搜索以及foreach实现in集合

    场景 在mapper接口层方法参数有id的数组和姓名的模糊搜索和类型的三个参数. 现在需要将这三个参数传递在动态sql的xml中接受并进行判断不为空. 然后查询数据库中记录在第一个参数id数组中的并且 ...

  5. mybatis添加方法可以传map吗_Mybatis中传递多个参数的4种方法总结

    前言 现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate.使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数.面对各种复杂的业务场景,传递参数也是一种 ...

  6. MyBatis Mapper 传递多个参数

    在pojo类对应的映射文件中,对应的参数类型可以省略. 传递方式 1. 接口正常书写,映射文件中SQL语句的占位符必须用 arg0 agr1-,或param1 param2- 接口: public C ...

  7. 转载 C#中使用结构来传递多个参数

    C#中当参数超过5个时,建议用结构来传递多个参数. 示例代码如下: 1 public struct MyStruct 2 { 3 public string str; 4 public int num ...

  8. python参数传递方法_深入理解python中函数传递参数是值传递还是引用传递

    python 的 深入理解python中函数传递参数是值传递还是引用传递 目前网络上大部分博客的结论都是这样的: Python不允许程序员选择采用传值还是传 引用.Python参数传递采用的肯定是&q ...

  9. ElementUI中el-upload传递额外参数为date类型时后台SpringBoot接收不到

    场景 ElementUI中el-upload怎样上传文件并且传递额外参数给Springboot后台进行接收: https://mp.csdn.net/console/editor/html/10797 ...

最新文章

  1. Mysql之一:mysqldump和LVM逻辑卷快照
  2. 在网页中使用react
  3. php鼠标悬停显示图片,鼠标滑过出现预览的大图提示效果
  4. syslog发送日志而docker容器接收不到的问题
  5. 机器与人交流的五大法则
  6. shell函数显式的返回值
  7. xjoi9235区间翻转
  8. 全国各省市区域mysql_中国省市区数据表(MySQL版)
  9. 好友返利网站开发 二
  10. 一步一步排查真实拍图片不能上传的问题
  11. 怎样快速的将WPS文件转换为word格式
  12. PackageManagerService
  13. Overleaf——在线 LaTeX 编辑器
  14. [译] 现代浏览器内部揭秘(第一部分)
  15. android 游戏sdk嫁接方式
  16. 蹩脚的CSDN手机绑定
  17. 广播风暴的产生原因和原理是什么?
  18. Fastcopy介绍
  19. 音频视频解决方案:GStreamer-ffmpeg-ffdshow-directshow-vfw
  20. 浪潮服务器+安装linux,浪潮NF5270M3型号服务器安装CentOS8.3

热门文章

  1. $gprmc java解析_$GPRMC解析 | 学步园
  2. 激光slam与视觉slam
  3. java 读取ini配置文件
  4. Git分布式版本控制工具(Git命令基本操作)
  5. mysql查询 正则表达式_Mysql正则表达式查询
  6. 安全运维工程师需要具备哪些综合能力?
  7. 拒绝摆烂!神仙网站Python自学,一路从入门闯到最后,边学边玩
  8. 会话边界控制器(SBC)
  9. 生产企业的经营模式有哪些?
  10. 软件测试工具Fiddler的使用