方法一:忽略parameterType,加@param("xxx")注解

在mapper接口中加上@param("xxx")注解,则在配置文件中直接用即可

List<Map<String, Object>> getDataByTime(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("platformId") Long platformId);
<select id="getDataByTime" resultType="java.util.Map">SELECTt.seller_id as sellerId,sum(t.payment_price) as total,FROMtrade_orders tWHEREANDt.platform_id = #{platformId}<if test="startTime != null and startTime != ''">AND<![CDATA[t.order_time >= #{startTime}]]></if><if test="endTime != null and endTime != ''">AND<![CDATA[t.order_time <= #{endTime}]]></if>GROUP BYt.seller_id</select>

方法二:忽略parameterType,不加@param("xxx")注解

用#{index},是第几个就用第几个的索引,索引从0开始

List<Map<String, Object>> getDataByTime(String startTime, String endTime, Long platformId);
<select id="getDataByTime" resultType="java.util.Map">SELECTt.seller_id as sellerId,sum(t.payment_price) as total,FROMtrade_orders tWHEREANDt.platform_id = #{3}<if test="startTime != null and startTime != ''">AND<![CDATA[t.order_time >= #{0}]]></if><if test="endTime != null and endTime != ''">AND<![CDATA[t.order_time <= #{1}]]></if>GROUP BYt.seller_id</select>

方法三:使用Map封装参数,parameterType=“hashmap”

封装好后,直接在配置文件引用#{key}即可

List<Map<String, Object>> getDataByTime(HashMap map);
<select id="getDataByTime" parameterType="hashmap" resultType="java.util.Map">SELECTt.seller_id as sellerId,sum(t.payment_price) as total,FROMtrade_orders tWHEREANDt.platform_id = #{platformId}<if test="startTime != null and startTime != ''">AND<![CDATA[t.order_time >= #{startTime}]]></if><if test="endTime != null and endTime != ''">AND<![CDATA[t.order_time <= #{endTime}]]></if>GROUP BYt.seller_id</select>

方法四:使用List封装参数

mapper配置文件使用foreach标签循环list

List<Map<String, Object>> getDataByTime(List<String> list);  
<select id="getXXXBeanList" resultType="java.util.Map">select XX from trade_orders where id in<foreach item="item" index="index" collection="list" open="(" separator="," close=")">  #{item}  </foreach>
</select> 

转载于:https://www.cnblogs.com/kobelieve/p/10490635.html

mybatis中mapper接口的参数设置几种方法相关推荐

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

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

  2. Mybatis中mapper接口里方法重载的实现

    看了网上的很多文章,说mapper接口里不能写重载方法,感觉这种说法不对,mapper接口是可以实现重载方法的. 实现方法 例如: package mapper;import pojo.User;im ...

  3. Action 中接收表单参数的3种方法总结

    (1) Action 中使用属性接受参数 @ Action中需要包含与表单参数对应的setXxx()方法: @ 简单易用,但当表单参数较多时不太适用: (2)使用DomainModel( 域模型:系统 ...

  4. Mybatis中如何传入map参数呢?

    转自: Mybatis中如何传入map参数呢? 下文笔者讲述Mybatis的xml中使用map参数的方法分享,如下所示 实现思路:1.将参数类型设置为map2.在xml中直接使用map的键值获取参数即 ...

  5. mybatis的mapper接口与xml传参问题

    本文来说下mybatis的mapper接口与xml传参问题 文章目录 单个基础数据类型的传参 多个基础数据类型的传参 单个javabean 多个javabean 单个基础数据类型的传参 也就是说,接口 ...

  6. 电商系统中API接口防止参数篡改和重放攻击(小程序/APP)

    说明:目前所有的系统架构都是采用前后端分离的系统架构,那么就不可能避免的需要服务对外提供API,那么如何保证对外的API的安全呢? 即生鲜电商中API接口防止参数篡改和重放攻击 目录 1. 什么是AP ...

  7. Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法...

    Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法 www.MyException.Cn   发布于:2012-09-15 ...

  8. sklearn中GBDT的一些参数、属性、方法的理解

    文章目录 GBDT 分类器 引入 重要参数 loss learning_rate subsample n_estimators criterion max_depth min_samples_leaf ...

  9. qt5设置linux系统时间,Qt中使用QLabel显示时间的两种方法

    Qt中使用QLabel显示时间的两种方法思路一致,只是实现方法不一样而已. main.cpp #include "displaytime.h" #include int main( ...

最新文章

  1. less及编译工具介绍
  2. 密码错误时alert弹出_密码重置用户流程4部曲
  3. Java开发经典面试题分享,建议收藏
  4. Python3 爬虫学习笔记 C16【数据储存系列 — Redis】
  5. 成都信息工程c语言题库,成都信息工程学院C语言考试题及答案
  6. python多线程同步与互斥_python多线程编程(3): 使用互斥锁同步线程
  7. Shell编程入门(第二版)(上)
  8. 02、MySQL—数据库基本操作
  9. WinAPI: midiOutShortMsg - 向输出设备发送 MIDI 短消息
  10. 古体字与简体字对照表_简体字与繁体字对照表
  11. 基于 Roslyn 实现代码动态编译
  12. 将爬取的实习僧网站数据传入HDFS
  13. powershell:调用7z,haozip解压缩文件
  14. 注册个人工作室费用、手续、材料、时间及流程
  15. 哈工大自动出校申请(selenium+chromedriver)(2021.3.22更新)
  16. 其实,成功离我们并不远!
  17. 从人工智能到人机智能到……
  18. 初中毕业学计算机有啥科目,学好哪些科目最容易成为学霸?初中生学好这几门功课很重要...
  19. 计算机大赛纪录片类参赛经验,郭艳梅-华侨大学新闻与传播学院
  20. 内推比例提升100%,离不开用产品运营的方式做招聘

热门文章

  1. 计算机转集成光学,集成光学
  2. 汽车之家全系车型(包含历史停售车型)图片--参数分析
  3. PHP无限分类-PHP100代码篇
  4. python各种类型日期转换大全
  5. linux c 调用 so 库
  6. Missing message for key xxx in bundle (default bundle) for locale zh_CN
  7. 算法入门经典第六章 例题6-8 树
  8. 如何静态添加toolbar到datagrid
  9. T-SQL 将存储过程结果插入到表中
  10. Bootstrap验证控件的使用