MyBatis 别名配置和使用
1 MyBatis别名的作用
在SqlMapConfig.xml中定义别名,在mapper.xml文件中 parameterType
和 resultType
中使用别名。其实是为了避免在xml文件中输入过长的全限定名,简化实体名的编写。
2 MyBatis自身定义的别名
MyBatis自身已经定义了一些的别名,我们在mapper.xml文件可以直接使用这些别名。
别名 | 映射的类型 |
---|---|
_byte | byte |
_long | long |
_short | short |
_int | int |
_integer | int |
_double | double |
_float | float |
_boolean | boolean |
string | String |
byte | Byte |
long | Long |
short | Short |
int | Integer |
integer | Integer |
double | Double |
float | Float |
boolean | Boolean |
date | Date |
decimal | BigDecimal |
bigdecimal | BigDecimal |
map | Map |
3 MyBatis自定义别名
3.1 定义别名
在SqlMapConfig.xml先定义别名
方式一:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--定义别名-->
<typeAliases>
<typeAlias type="com.yiidian.domain.Customer" alias="customer"/>
</typeAliases>
<!-- 1.数据库连接信息-->
<environments default="mysql">
<environment id="mysql">
<transactionManager type="jdbc"></transactionManager>
<dataSource type="pooled">
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEcndoing=utf8"/>
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
这种方式需要一个个实体地配置。
方式二:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--定义别名-->
<typeAliases>
<package name="com.yiidian.domain"/>
</typeAliases>
<!-- 1.数据库连接信息-->
<environments default="mysql">
<environment id="mysql">
<transactionManager type="jdbc"></transactionManager>
<dataSource type="pooled">
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEcndoing=utf8"/>
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
这种方式更加方便,直接扫描实体所在包,别名就是类名(首字母小写)
3.2 使用别名
在CustomerDao.xml文件使用别名
<insert id="save" parameterType="customer">
INSERT INTO t_customer(NAME,gender,telephone) VALUES(#{name},#{gender},#{telephone})
</insert>
这里customer就是别名。
热门文章
优秀文章