mybatis 参数
在MyBatis的select,insert,update,delete这些元素中都提到了parameterType这个属性。MyBatis现在使用parameterType有基本类型和JAVA复杂数据类型。
基本类型:包含int,String,Date等,基本数据类型作为传入参数,只能传入一个。通过#{参数名}即可获取传入的值
复杂类型:包含JAVA实体类,Map,通过#{属性名}或#{Map的keyName}即可获取传入的值。
1.基本类型参数示例
xml文件
<select id="selectName" parameterType="int" resultType="com.domain.Person">
select * from tableName where id = #{id}
</select>
Java代码
List<Person> plist = Mapper.selectPerson(2);
for(Person persion:plist){
System.out.println(persion.toString());
}
2.JAVA 实体类型参数示例
xml文件
<select id="selectName" parameterType="com.domain.Person" resultType="com.domain.Person">
select * from tableName where id = #{id}
</select>
Java代码
Person person = new Person();
person.setId(2);
List<Person> plist = Mapper.selectPerson(person)
for(Person person : plist){
System.out.println(person.toString());
}
3.Map参数示例
xml文件
<select id="selectName" parameterType="Map" resultType="com.domain.Person">
select * from tableName where id = #{id} and sex=#{sex}
</select>
Java代码
Map<String,String> map = new HasMap<String,String>();
map.put("id",2);
map.put("sex","男");
List<Person> plist = Mapper.selectPerson(map);
for(Person person:plist){
System.out.println(person.toString());
}
mybatis 参数相关推荐
- java回顾:MyBatis参数、sql片段、动态sql、高级查询
目录 一.MyBatis参数 SqlSessiong工具类 1.映射文件配置-入参 1.1 parameterType入参 1.2 单个入参,变量名任意定义: 1.3 多个入参,解决方案: 1.4 p ...
- Mybatis参数问题解释
mybatis参数问题 int insert(Girl girl); /*int返回的是被影响的数据行*/ 单个基本数据类型 如果仅仅是简单的一个单值传入,那么#{}表达式里面可以随便 写,只有一 ...
- MyBatis -- 参数占位符 #{} 和 ${}
MyBatis -- 参数占位符 #{} 和 ${} 一.准备工作 二.参数占位符 #{} 和 ${} 三.特殊场景 3.1 特殊场景 1 -- String 3.1.1 使用 #{} 3.1.2 使 ...
- mybatis参数有list和实体类_Mybatis的几种传参方式,你了解吗?
目录 前言 单个参数 多个参数 使用索引[不推荐] 使用@Param 使用Map POJO[推荐] List传参 数组传参 总结 前言 前几天恰好面试一个应届生,问了一个很简单的问题:你了解过Myba ...
- MyBatis参数传入集合之foreach动态sql
版权声明:本文为博主原创文章,未经博主允许不得转载. foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合.foreach元素的属性主要有item,index,collecti ...
- 10、mybatis参数处理
文章目录 1.单个参数:mybatis不做任何处理 2.多个参数:mybatis会做特殊处理 3.命名参数:明确指定封装参数时map的key:@Param("id") 3.1 Em ...
- MyBatis参数名称解析器-ParamNameResolver解析
ParamNameResolver ParamNameResolver是一个参数名解析器,负责把方法的参数按顺序解析出来并进行标注 主要用来处理接口形式的参数,最后会把参数处放在一个map中 map的 ...
- MyBatis参数为Integer型并赋值为0时判断失误的问题解决
mybatis.xml中有if判断条件判断参数不为空时,赋值为0的Integer参数被MyBatis判断为空,因此不执行<if test="param != null and para ...
- MyBatis参数绑定
SQL url推荐加入characterEncoding=utf8,防止因编码问题无法获取数据库数据. url=jdbc:mysql://localhost:3306/mybatis?characte ...
最新文章
- 深入剖析通信层和RPC调用的异步化(上)
- java advance_JavaAdvance
- tampermonkey怎么不能用了_普洱茶发霉了怎么办?能不能用太阳晒
- 现代IM系统中消息推送和存储架构的实现
- 这个东西可以温暖你想打BUG的心......
- day14【前台】用户登录注册
- 10分钟利用django搭建一个博客
- 46.Linux/Unix 系统编程手册(下) -- System V 消息队列
- kettle分布式部署_kettle服务器集群
- 案例|工业物联网解决方案•生产数据可视化
- 面试常见简单编程题目
- 浅谈域名抢注和域名投资
- Imagenet数据集1000类别中英文
- 计算机语言的魅力,四年级语文下册《语言的魅力》说课稿
- python处理pdf实例_Python程序图片和pdf上文字识别实例
- 桌面上的ie,小游戏,极品美媚图,免费新电影,淘宝网今日打折特价区的图标无法删除,怎么办?
- Detours: 在二进制代码上截获Win32函数调用
- QT大作业之---学生信息管理系统
- Jlink V8 灯不亮,重刷固件(亲测可用)
- 软考A计划-真题-分类精讲汇总-第十五章(数据库设计)