mybatis學習筆記(四)-- 為實體類定義別名兩種方法(基於xml映射)


下面示例在mybatis學習筆記(二)-- 使用mybatisUtil工具類體驗基於xml和注解實現 Demo的基礎上進行優化

以新增一個用戶為例子,原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>     

 

 ...(@_@)...End...

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM