1.单个实体类设置别名

1.1 不使用alias

<typeAliases>
<!-- typeAlias:为某个java类型起别名 ; type:指定要起别名的类型全类名; 默认别名就是类名小写(大小写都可以) -->
<typeAlias type="com.mybatis.entity.Employee" />
</typeAliases>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mybatis.dao.EmployeeMapper">
<insert id="addEmployee" parameterType="Employee">
insert into
t_employee(empId,empName,empSex,empAge)
values(#{empId},#{empName},#{empSex},#{empAge})
</insert>
</mapper>

1.2 使用alias

<typeAliases>
<!-- alias:指定新的别名-->
<typeAlias type="com.mybatis.entity.Employee" alias="emp" />
</typeAliases>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mybatis.dao.EmployeeMapper">
<insert id="addEmployee" parameterType="emp">
insert into
t_employee(empId,empName,empSex,empAge)
values(#{empId},#{empName},#{empSex},#{empAge})
</insert>
</mapper>

2.多个实体类设置别名

2.1 不使用注解@Alias

    <typeAliases>
<!--package:为某个包下的所有类批量起别名 name:指定包名(为当前包以及下面所有的后代包的每一个类都起一个默认别名(类名小写),) -->
<package name="com.mybatis.entity" />
</typeAliases>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mybatis.dao.EmployeeMapper">
<insert id="addEmployee" parameterType="Employee">
insert into
t_employee(empId,empName,empSex,empAge)
values(#{empId},#{empName},#{empSex},#{empAge})
</insert>
</mapper>

2.2 使用注解@Alias

<typeAliases>
<!--package:为某个包下的所有类批量起别名 name:指定包名(为当前包以及下面所有的后代包的每一个类都起一个默认别名(类名小写),)
批量起别名的情况下,使用@Alias注解为某个类型指定新的别名-->
<package name="com.mybatis.entity" />
</typeAliases>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mybatis.dao.EmployeeMapper">
<insert id="addEmployee" parameterType="emp">
insert into
t_employee(empId,empName,empSex,empAge)
values(#{empId},#{empName},#{empSex},#{empAge})
</insert>
</mapper>
package com.mybatis.entity;

import org.apache.ibatis.type.Alias;

/**
* 雇员类
*
* @author yyx 2019年3月23日
*/
@Alias("emp")
public class Employee {
/**
*雇员ID
*/
private String empId;
/**
* 雇员姓名
*/
private String empName;
/**
* 雇员性别: 0 女,1 男
*/
private Integer empSex;
/**
* 雇员年龄
*/
private Integer empAge; public Employee() {
super();
} public Employee(String empId, String empName, Integer empSex, Integer empAge) {
super();
this.empId = empId;
this.empName = empName;
this.empSex = empSex;
this.empAge = empAge;
} public String getEmpId() {
return empId;
} public void setEmpId(String empId) {
this.empId = empId;
} public String getEmpName() {
return empName;
} public void setEmpName(String empName) {
this.empName = empName;
} public Integer getEmpSex() {
return empSex;
} public void setEmpSex(Integer empSex) {
this.empSex = empSex;
} public Integer getEmpAge() {
return empAge;
} public void setEmpAge(Integer empAge) {
this.empAge = empAge;
} }

MyBatis探究-----为实体类Bean取别名,配置typeAliases的更多相关文章

  1. Mybatis自动生成实体类和实体映射工具

    Mybatis Mysql生成实体类 用到的Lib包: mybatis-generator-core-1.3.2.jarmysql-connector-java-5.1.30.jar 1. 创建一个文 ...

  2. 使用Spring实例化Bean的方法以及Bean取别名

    一.通过构造方法实例化Bean bean中加构造方法 public class Bean1 { public Bean1() { System.out.println("Bean1构造方法. ...

  3. 利用org.mybatis.generator生成实体类

    springboot+maven+mybatis+mysql 利用org.mybatis.generator生成实体类 1.添加pom依赖:   2.编写generatorConfig.xml文件 ( ...

  4. Mybatis自动生成实体类

    Maven自动生成实体类需要的jar包 一.pom.xml中 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns ...

  5. mybatis 一对一 映射实体类、嵌套查询

    一对一 在SysUser 类中增加SysRole字段.1.sql语句将role.role_name映射到role.roleName上. 2.还可以在XML 映射文件中配置结果映射.<result ...

  6. Mybatis自动生成实体类,映射文件,dao

    http://www.mybatis.org/generator/index.html 方法一:eclipse插件式 1.下载 mybatis-generator-core-1.3.2.jar 解压后 ...

  7. maven 工程mybatis自动生成实体类

    generatorConfig.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ge ...

  8. Mybatis自动生成实体类、dao接口和mapping映射文件

    由于Mybatis是一种半自动的ORM框架,它的工作主要是配置mapping映射文件,为了减少手动书写映射文件,可以利用mybatis生成器,自动生成实体类.dao接口以及它的映射文件,然后直接拷贝到 ...

  9. 使用springboot mybatis 查询时实体类中的驼峰字段值为null

    看到返回结果以后主要分析了一下情况: 实体类的get.set方法确实 mapper.xml文件中的resultMap.resultType等原因导致 数据库中数据存在问题 经过检查与验证发现以上都不存 ...

随机推荐

  1. python底层原理

    有同学问到了一个问题,python中存储变量是通过内存地址来存储,那么python又是如何去判断内存中的地址是什么数据类型的呢.经过查找,找到这篇文章: 原博客地址:http://www.cnblog ...

  2. Sting、StringBuffer、StringBuilder

    (1)String是字符串常量,一旦创建之后不可更改:StringBuffer和StringBuilder是字符串变量,可以更改.String的不可变,所以适合作为Map的键. (2)StringBu ...

  3. 数据库交互之减少IO次数

    一个对程序有要求的人一定会尽量去想办法减少IO次数来减少响应时间,但是又不能一味地为了减少IO次数而一直占用连接池.数据库连接一开一关也是需要耗费时间的,下面以SqlServer为例列举几种常见的减少 ...

  4. Vue使用vue-echarts图表

    vue-echarts和echarts的区别: vue-echarts是封装后的vue插件, 基于 ECharts v4.0.1+ 开发,依赖 Vue.js v2.2.6+,功能一样的只是把它封装成v ...

  5. [LeetCode] Generate Random Point in a Circle 生成圆中的随机点

    Given the radius and x-y positions of the center of a circle, write a function randPoint which gener ...

  6. python语法_str_eval

    dict1 = {} a = str(dict1) type(a) = 字符串 b = eval(a) type(b) = 字典

  7. python pymsql的用法 180903

    一.1.pymysql 的下载pip3 install pymysql2.pymysql的使用import pymysqlname=input("请输入用户名:")password ...

  8. 好大一个坑: EF Core 异步读取大字符串字段比同步慢100多倍

    这两天遇到一个奇怪的问题,通过 EF/EF Core 查询数据库速度奇慢,先是在传统的 ASP.NET 项目中遇到(用的是EF6.0),后来将该项目迁移至 ASP.NET Core 也是同样的问题(用 ...

  9. 与前端(使用vue框架)对接的问题

    1.跨域问题 跨域问题是: 浏览器的同源安全策略 没错,就是这家伙干的,浏览器只允许请求当前域的资源,而对其他域的资源表示不信任.那怎么才算跨域呢? 请求协议http,https的不同 域domain ...

  10. java_xml_解析

    xml解析的两种的基本方式 1:SAX解析:一行一行的解析,不回头 2:DOM解析:将整个XML以树状读到内存中,然后需要哪一部分就取哪一部分 SAX解析: 基于java的步骤: //1.获取解析工厂 ...