parameterType 属性、typeAliases 别名
五 parameterType 属性
- 在 XXXMapper.xml 中等标签的 parameterType 可以
控制参数类型 - SqlSession 的 selectList()和 selectOne()的第二个参数和 selectMap()
的第三个参数都表示方法的参数.
2.1 示例,
People p = session.selectOne(“a.b.selById”,1);
System.out.println§;
2.2 在 Mapper.xml 中可以通过#{}获取参数
2.2.1 parameterType 控制参数类型
2.2.2 #{}获取参数内容
2.2.2.1 使用索引,从 0 开始 #{0}表示第一个参数
2.2.2.2 也可以使用#{param1}第一个参数
2.2.2.3 如果只有一个参数(基本数据类型或 String),mybatis对#{}里面内容没有要求只要写内容即可.
2.2.2.4 如果参数是对象#{属性名}
2.2.2.5 如果参数是 map 写成#{key}
<select id="selById" resultType="com.bjsxt.pojo.People" parameterType="int">select * from people where id=#{0}
</select>
- #{} 和 ${} 的区别
3.1 #{} 获取参数的内容支持 索引获取,param1 获取指定位置参数, 并且 SQL 使用?占位符
3.2 字符串拼接不使用?,默认找{} 字符串拼接不使用?,默认找字符串拼接不使用?,默认找{内容}内容的 get/set 方法,如果写数字,就是一个数字 - 如果在 xml 文件中出现 “<” , “>” ,双引号 等特殊字符时可以使用XML 文件转义标签(XML 自身的)
4.1 <![CDATA[ 内容 ]]> - mybatis 中实现 mysql 分页写法
5.1 ?不允许在关键字前后进行数学运算,需要在代码中计算完成后传递到 mapper.xml 中
5.2 在 java 代码中计算
//显示几个
int pageSize = 2;
//第几页
int pageNumber = 2;
//如果希望传递多个参数,可以使用对象或 map
Map<String,Object> map = new HashMap<>();
map.put("pageSize", pageSize);
map.put("pageStart", pageSize*(pageNumber-1));
List<People> p =
session.selectList("a.b.page",map);
5.3 在 mapper.xml 中代码
<select id="page" resultType="com.bjsxt.pojo.People" parameterType="map">select * from people limit #{pageStart},#{pageSize}
</select>
六. typeAliases 别名
- 系统内置别名: 把类型全小写
- 给某个类起别名
2.1 alias=”自定义”<typeAliases>
<typeAlias type="com.bjsxt.pojo.People" alias="peo"/>
</typeAliases>
2.2 mapper.xml 中 peo 引用 People 类
<select id="page" resultType="peo" parameterType="map">select * from people limit #{pageStart},#{pageSize}
</select>
- 直接给某个包下所有类起别名,别名为类名,不区分大小写
3.1 mybatis.xml 中配置
<typeAliases> <package name="com.bjsxt.pojo" />
</typeAliases>
3.2 mapper.xml 中通过类名引用
<select id="page" resultType="People" parameterType="map">select * from people limit #{pageStart},#{pageSize}
</select>
parameterType 属性、typeAliases 别名相关推荐
- xstream,节点属性起别名时这样的问题你遇到过吗
首先这是我自己定义的一个xstream,这个xstream是为了在处理xml时能够加上<![CDATA[------]]>而特别重写的.这个xstream是没有任何问题的. private ...
- mybatis的parameterType属性那些情况下要写 哪些情况下不用写
不写: 如果 是基本类型,或者是java自身的引用类型,在mybatis 运行时,会自动的进行匹配,可以省略parameterType属性. 写: 如果是你自己声明的一个类型,因为可能在引入的jar包 ...
- Mybatis Mapper动态代理方式 typeAliases 别名的使用
目录结构及配置文件与原始dao方法相比更简便 只需一个UserMapper的接口,放在一起的配置文件,配置文件中namespace的地址确定jdk动态代理的对象 <?xml version=&q ...
- 深入浅出Mybatis系列(四)---配置详解之typeAliases别名(mybatis源码篇)
上篇文章<深入浅出Mybatis系列(三)---配置详解之properties与environments(mybatis源码篇)> 介绍了properties与environments, ...
- mybatis的typeAliases别名
一.前言 typeAliases是MyBatis中的别名处理器类,翻译过来就是别名的意思.别名处理器的作用就是把Java类型,给它起一个简单一点的别名,这样我们在XML文件中引入全类名的地方就可以使用 ...
- mybatis 配置之 typeAliases 别名配置元素设置
一.方式一:使用typeAlias <typeAliases><typeAlias alias="User" type="com.**.entity. ...
- java 转xml 变成两根下划线_XStream实现xml和java对象之间的互相转换(包括对属性,别名,下划线_的处理),同理JSON也可以...
首先去官网下载响应JAR包 最少需要两个jar包,一个xstream.jar,一个是xmlpull.jar 首先来看下java对象到xml的转换 package xml; class PhoneNum ...
- mybatis中的parameterType属性
1.parameterType的基本作用 对于parameterType,简单来说就是定义了sql语句中传入参数的类型,可以是基本数据类型,也可以是定义的实体类:其中:parameterType=&q ...
- mybatis学习(17):列名与属性名不一致的情况(使用别名)
目录结构 com.geyao.mybatis.mapper BlogMapper类 package com.geyao.mybatis.mapper;import com.geyao.mybatis. ...
最新文章
- 使用SDL打造游戏世界之入门篇 - 1
- grouplens上的movielens数据集_ItemCF算法的Python实现,数据基于MovieLens
- java命令_JAVA与模式之命令模式
- 新工作 (2) : 准备
- java litjson_仿造 Gson 的自制 json 解析器
- JQuery datepicker
- SQL 删除重复数据,只保留一行
- 实现原理 扫描枪_扫描枪原理
- Sicily 2014 Dairy Queen
- matlab中计算最大利润,最大利润问题
- 七战DTCC铸成ACE Director 去哪儿网周彦伟畅聊数据库的十八般武艺
- 向量空间、内积空间、欧式空间以及希尔伯特空间的关系
- 前端RSA加密,加密字符串过长,提示“Message too long for RSA”问题
- 天翼云荣获2022年度“边缘计算先锋企业”“分布式云先锋企业”称号!
- (附源码)计算机毕业设计SSM基于大数据的汽车流量监控
- 电脑视频转换成mp4格式,视频格式转换器转换
- 【读书笔记】区块链思维
- oracle pga的作用,ORACLE PGA 的调整
- 线性代数二次型标准化的方法总结
- 论文管理工具使用初探(主要包括endnote,zotero)