Mybatis为实体类定义别名typeAliases
以新增一个用户为例子,原UserMapper.xml配置如下:
<insert id="addUser" parameterType="main.User"> insert into tb_user(name,age) values(#{name},#{age}) </insert>
注:parameterType="main.User",main.User为包名+类名
方法一、单独定义别名
例子:为main.User类定义别名_User
(1)在conf.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> <!-- 引用db.properties配置文件 --> <properties resource="db.properties"/> <typeAliases> <typeAlias type="main.User" alias="_User"/> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type="JDBC" /> <!-- 配置数据库连接信息 --> <dataSource type="POOLED"> <!-- value属性值引用db.properties配置文件中配置的值 --> <property name="driver" value="${driver}" /> <property name="url" value="${url}" /> <property name="username" value="${name}" /> <property name="password" value="${password}" /> </dataSource> </environment> </environments> <mappers> <!-- 注册userMapper.xml文件(基于xml实现)--> <mapper resource="mapper/userMapper.xml"/> <!-- 注册UserMapper映射接口(基于注解实现)--> <mapper class="mapper.UserMapperI"/> </mappers> </configuration>
(2)修改UserMapper.xml如下:
<insert id="addUser" parameterType="_User"> insert into tb_user(name,age) values(#{name},#{age}) </insert>
方法二、批量为某个包下的所有实体类设置别名
(1)设置别名的方式就是去除类所在的包,修改conf.xml
<typeAliases> <package name="main"/> </typeAliases>
注:<package name="mainn"/>就表示为这个包下面的所有实体类设置别名。main.User这个实体类的别名就会被设置成User。
(2)修改UserMapper.xml
<insert id="addUser" parameterType="User"> insert into tb_user(name,age) values(#{name},#{age}) </insert>