五 parameterType 属性

  1. 在 XXXMapper.xml 中等标签的 parameterType 可以
    控制参数类型
  2. 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>
  1. #{} 和 ${} 的区别
    3.1 #{} 获取参数的内容支持 索引获取,param1 获取指定位置参数, 并且 SQL 使用?占位符
    3.2 字符串拼接不使用?,默认找{} 字符串拼接不使用?,默认找字符串拼接不使用?,默认找{内容}内容的 get/set 方法,如果写数字,就是一个数字
  2. 如果在 xml 文件中出现 “<” , “>” ,双引号 等特殊字符时可以使用XML 文件转义标签(XML 自身的)
    4.1 <![CDATA[ 内容 ]]>
  3. 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 别名

  1. 系统内置别名: 把类型全小写
  2. 给某个类起别名
    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>
  1. 直接给某个包下所有类起别名,别名为类名,不区分大小写
    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 别名相关推荐

  1. xstream,节点属性起别名时这样的问题你遇到过吗

    首先这是我自己定义的一个xstream,这个xstream是为了在处理xml时能够加上<![CDATA[------]]>而特别重写的.这个xstream是没有任何问题的. private ...

  2. mybatis的parameterType属性那些情况下要写 哪些情况下不用写

    不写: 如果 是基本类型,或者是java自身的引用类型,在mybatis 运行时,会自动的进行匹配,可以省略parameterType属性. 写: 如果是你自己声明的一个类型,因为可能在引入的jar包 ...

  3. Mybatis Mapper动态代理方式 typeAliases 别名的使用

    目录结构及配置文件与原始dao方法相比更简便 只需一个UserMapper的接口,放在一起的配置文件,配置文件中namespace的地址确定jdk动态代理的对象 <?xml version=&q ...

  4. 深入浅出Mybatis系列(四)---配置详解之typeAliases别名(mybatis源码篇)

    上篇文章<深入浅出Mybatis系列(三)---配置详解之properties与environments(mybatis源码篇)> 介绍了properties与environments, ...

  5. mybatis的typeAliases别名

    一.前言 typeAliases是MyBatis中的别名处理器类,翻译过来就是别名的意思.别名处理器的作用就是把Java类型,给它起一个简单一点的别名,这样我们在XML文件中引入全类名的地方就可以使用 ...

  6. mybatis 配置之 typeAliases 别名配置元素设置

    一.方式一:使用typeAlias  <typeAliases><typeAlias alias="User" type="com.**.entity. ...

  7. java 转xml 变成两根下划线_XStream实现xml和java对象之间的互相转换(包括对属性,别名,下划线_的处理),同理JSON也可以...

    首先去官网下载响应JAR包 最少需要两个jar包,一个xstream.jar,一个是xmlpull.jar 首先来看下java对象到xml的转换 package xml; class PhoneNum ...

  8. mybatis中的parameterType属性

    1.parameterType的基本作用 对于parameterType,简单来说就是定义了sql语句中传入参数的类型,可以是基本数据类型,也可以是定义的实体类:其中:parameterType=&q ...

  9. mybatis学习(17):列名与属性名不一致的情况(使用别名)

    目录结构 com.geyao.mybatis.mapper BlogMapper类 package com.geyao.mybatis.mapper;import com.geyao.mybatis. ...

最新文章

  1. 使用SDL打造游戏世界之入门篇 - 1
  2. grouplens上的movielens数据集_ItemCF算法的Python实现,数据基于MovieLens
  3. java命令_JAVA与模式之命令模式
  4. 新工作 (2) : 准备
  5. java litjson_仿造 Gson 的自制 json 解析器
  6. JQuery datepicker
  7. SQL 删除重复数据,只保留一行
  8. 实现原理 扫描枪_扫描枪原理
  9. Sicily 2014 Dairy Queen
  10. matlab中计算最大利润,最大利润问题
  11. 七战DTCC铸成ACE Director 去哪儿网周彦伟畅聊数据库的十八般武艺
  12. 向量空间、内积空间、欧式空间以及希尔伯特空间的关系
  13. 前端RSA加密,加密字符串过长,提示“Message too long for RSA”问题
  14. 天翼云荣获2022年度“边缘计算先锋企业”“分布式云先锋企业”称号!
  15. (附源码)计算机毕业设计SSM基于大数据的汽车流量监控
  16. 电脑视频转换成mp4格式,视频格式转换器转换
  17. 【读书笔记】区块链思维
  18. oracle pga的作用,ORACLE PGA 的调整
  19. 线性代数二次型标准化的方法总结
  20. 论文管理工具使用初探(主要包括endnote,zotero)

热门文章

  1. Oracle查看表空间,创建表空间
  2. 获得创建临时表的session id
  3. nginx如何配置多站点
  4. session的存储,以及redis基本介绍
  5. 自考--网络经济与企业管理--选择易考题
  6. 用css和html实现的一个forest logo
  7. CSS3-多列布局-伸缩盒布局-伸缩项目
  8. 入门机器学习(十二)--课后作业解析-偏差与方差(Python 实现)
  9. 使用java实现打印功能_java实现打印功能有没有比较好的方式?
  10. 7-2 输出约数 (9 分)