MyBatis入門學習(三)

來源:互聯網
上載者:User

標籤:

  在實際開發中,我們希望檔案配置是分類配置存放,需要的時候引入即可。如果多檔案的配置混合配置使用,那麼對項目的後期維護將增加難度。

一、對於串連資料庫的配置單獨放在一個properties檔案中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>    <environments default="development">        <environment id="development">            <transactionManager type="JDBC" />            <!-- 設定資料庫串連資訊 -->            <dataSource type="POOLED">                <property name="driver" value="com.mysql.jdbc.Driver" />                <property name="url" value="jdbc:mysql://localhost:3306/mybatis" />                <property name="username" value="root" />                <property name="password" value="123456" />            </dataSource>        </environment>    </environments>        <mappers>        <!-- 註冊userMapper.xml檔案,         userMapper.xml位於me.gacl.mapping這個包下,所以resource寫成me/gacl/mapping/userMapper.xml-->        <mapper resource="com/murong/mapping/userMapper.xml"/>             <!-- 註冊UserMapper映射介面-->                    <mapper class="com.murong.mapping.UserMapperI"/>            </mappers></configuration>
2、現在我們把資料庫連接的配置分離出來,單獨放在一個設定檔中。即    db.properties  檔案

  具體操作:在項目的src目錄下建立一個db.properties檔案,檔案內容如下:

driver=com.mysql.jdbc.Driverurl=jdbc\:mysql\://localhost\:3306/mybatisname=rootpassword=123456
3、在MyBatis的conf.xml檔案中引用db.properties檔案,如下:
<?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>    <properties resource="db.properties"></properties>        <!-- 簡化sql檔案對應方式一 -->        <!--             <typeAliases>                <typeAlias type="com.murong.domain.User" alias="User"/>        </typeAliases>         -->        <!-- 簡化sql檔案對應方式二-->        <!-- 配置實體類的別名,配置實體類別名的目的是為了在引用實體類時可以使用實體類的別名來代替實體類,達到簡寫的目的 -->        <typeAliases>            <!-- 為實體類com.murong.domain.User配置一個別名_User -->            <!-- <typeAlias type="com.murong.domain.User" alias="_User"/> -->            <!-- 為com.murong.domain包下的所有實體類配置別名,MyBatis預設的設定別名的方式就是去除類所在的包後的簡單的類名            比如com.murong.domain.User這個實體類的別名就會被設定成User             -->            <package name="com.murong.domain"/>        </typeAliases>    <environments default="development">        <environment id="development">            <transactionManager type="JDBC" />            <!-- 設定資料庫串連資訊 -->            <dataSource type="POOLED">                <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檔案,         userMapper.xml位於com.murong.mapping這個包下,所以resource寫成com/murong/mapping/userMapper.xml-->        <mapper resource="com/murong/mapping/userMapper.xml"/>             <!-- 註冊UserMapper映射介面-->        <!--             <mapper class="com.murong.mapping.UserMapperI"/>         -->    </mappers></configuration>
二、為實體類定義別名,簡化sql映射xml檔案中的引用

  之前,我們在sql映射xml檔案中的引用實體類時,需要寫上實體類的全類名(包名+類名),如下:

 <!-- 建立使用者(Create) -->     <insert id="addUser" parameterType="com.murong.domain.User">         insert into users(name,age) values(#{name},#{age})     </insert>

  parameterType="com.murong.domain.User"這裡寫的實體類User的全類名com.murong.domain.User,每次都寫這麼一長串內容挺麻煩的,而我們希望能夠簡寫成下面的形式

 

 <!-- 建立使用者(Create) -->     <insert id="addUser" parameterType="_User">         insert into users(name,age) values(#{name},#{age})     </insert>

 

  為了達到這種效果,我們需要在conf.xml檔案中為實體類="com.murong.domain.User"定義一個別名為"User",具體做法如下:
  在conf.xml檔案中<configuration></configuration>標籤中添加如下配置:

 

<!-- 簡化sql檔案對應方式一 -->        <!--             <typeAliases>                <typeAlias type="com.murong.domain.User" alias="_User"/>        </typeAliases>         -->        <!-- 簡化sql檔案對應方式二-->        <!-- 配置實體類的別名,配置實體類別名的目的是為了在引用實體類時可以使用實體類的別名來代替實體類,達到簡寫的目的 -->        <typeAliases>            <!-- 為實體類com.murong.domain.User配置一個別名_User -->            <!-- <typeAlias type="com.murong.domain.User" alias="_User"/> -->            <!-- 為com.murong.domain包下的所有實體類配置別名,MyBatis預設的設定別名的方式就是去除類所在的包後的簡單的類名            比如com.murong.domain.User這個實體類的別名就會被設定成User             -->            <package name="com.murong.domain"/>        </typeAliases>

 

 

 

 

<package name="com.murong.domain"/>就表示為這個包下面的所有實體類設定別名。MyBatis預設的設定別名的方式就是去除類所在的包後的簡單的類名,比如com.murong.domain.User這個實體類的別名就會被設定成User。

MyBatis入門學習(三)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.