mybatis中mapper接口的参数设置几种方法
方法一:忽略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接口的参数设置几种方法相关推荐
- mybatis添加方法可以传map吗_Mybatis中传递多个参数的4种方法总结
前言 现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate.使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数.面对各种复杂的业务场景,传递参数也是一种 ...
- Mybatis中mapper接口里方法重载的实现
看了网上的很多文章,说mapper接口里不能写重载方法,感觉这种说法不对,mapper接口是可以实现重载方法的. 实现方法 例如: package mapper;import pojo.User;im ...
- Action 中接收表单参数的3种方法总结
(1) Action 中使用属性接受参数 @ Action中需要包含与表单参数对应的setXxx()方法: @ 简单易用,但当表单参数较多时不太适用: (2)使用DomainModel( 域模型:系统 ...
- Mybatis中如何传入map参数呢?
转自: Mybatis中如何传入map参数呢? 下文笔者讲述Mybatis的xml中使用map参数的方法分享,如下所示 实现思路:1.将参数类型设置为map2.在xml中直接使用map的键值获取参数即 ...
- mybatis的mapper接口与xml传参问题
本文来说下mybatis的mapper接口与xml传参问题 文章目录 单个基础数据类型的传参 多个基础数据类型的传参 单个javabean 多个javabean 单个基础数据类型的传参 也就是说,接口 ...
- 电商系统中API接口防止参数篡改和重放攻击(小程序/APP)
说明:目前所有的系统架构都是采用前后端分离的系统架构,那么就不可能避免的需要服务对外提供API,那么如何保证对外的API的安全呢? 即生鲜电商中API接口防止参数篡改和重放攻击 目录 1. 什么是AP ...
- Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法...
Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法 www.MyException.Cn 发布于:2012-09-15 ...
- sklearn中GBDT的一些参数、属性、方法的理解
文章目录 GBDT 分类器 引入 重要参数 loss learning_rate subsample n_estimators criterion max_depth min_samples_leaf ...
- qt5设置linux系统时间,Qt中使用QLabel显示时间的两种方法
Qt中使用QLabel显示时间的两种方法思路一致,只是实现方法不一样而已. main.cpp #include "displaytime.h" #include int main( ...
最新文章
- less及编译工具介绍
- 密码错误时alert弹出_密码重置用户流程4部曲
- Java开发经典面试题分享,建议收藏
- Python3 爬虫学习笔记 C16【数据储存系列 — Redis】
- 成都信息工程c语言题库,成都信息工程学院C语言考试题及答案
- python多线程同步与互斥_python多线程编程(3): 使用互斥锁同步线程
- Shell编程入门(第二版)(上)
- 02、MySQL—数据库基本操作
- WinAPI: midiOutShortMsg - 向输出设备发送 MIDI 短消息
- 古体字与简体字对照表_简体字与繁体字对照表
- 基于 Roslyn 实现代码动态编译
- 将爬取的实习僧网站数据传入HDFS
- powershell:调用7z,haozip解压缩文件
- 注册个人工作室费用、手续、材料、时间及流程
- 哈工大自动出校申请(selenium+chromedriver)(2021.3.22更新)
- 其实,成功离我们并不远!
- 从人工智能到人机智能到……
- 初中毕业学计算机有啥科目,学好哪些科目最容易成为学霸?初中生学好这几门功课很重要...
- 计算机大赛纪录片类参赛经验,郭艳梅-华侨大学新闻与传播学院
- 内推比例提升100%,离不开用产品运营的方式做招聘