4. MyBatis幾個可以優化的地方

    與其說是優化, 還不如說是讓配置更簡單.


一: 連接數據庫的配置單獨放到一個屬性文件中

    在 src 路徑下新建一個 db.properties 屬性文件, 並把數據庫連接信息放入文件中, 然後在 conf.xml 文件中導入屬性文件引用就可以了, 這樣更好管理.

    1. 新建 db.properties 文件

    2. 寫入屬性信息

wKiom1ZvuJvyza1TAACHDXbmMfc702.png

    

    3. 在 conf.xml 中導入屬性文件

wKioL1ZvuP7RvYW2AABtbqofi8c386.png

    

    4. 引用屬性文件中的值

wKioL1ZvuWmw72H0AADD_u0GLKk131.png

    

二: 爲實體類定義別名, 簡化 SQL 映射文件中的引用.

    之前在 PersonMapper.xml 文件中來引用 Person 類型的時候是這樣寫的

    resultType="com.mybatis.entities.Person" // 包名+;類名

    這樣的東西引用多了的時候, 一直這樣寫比較複雜. 複雜了肯定就會簡單方法.

   在 conf.xml 中, 利用這個標籤(<typeAliases></typeAliases>) 來給實體類起別名. 然後在 PersonMapper.xml 文件中引用這個別名就可以了.

    別名有兩種方法:

    1. 直接給類起別名

    在 conf.xml 文件中的 <configuration> 標籤下加入如下標籤

    <typeAliases>
		<typeAlias type="com.mybatis.entities.Person" alias="_Person"/>
	</typeAliases>

    後面的 alias 就是一個別名, 我們在 PersonMapper.xml 文件中直接寫 _Person 就可以使用 了.

        <select id="getPersons"  parameterType="int" resultType="_Person">
		SELECT id, name, age FROM person
	</select>


    2. 給包起別名

    在 conf.xml 文件中的 <configuration> 標籤下加入如下標籤

	<typeAliases>
		<!-- <typeAlias type="com.mybatis.entities.Person" alias="_Person"/> -->
		<package name="com.mybatis.entities"/>
	</typeAliases>

    注意: 使用的是 package 子標籤, name的值填寫實體類所在的包名. 引用的時候直接用類名來引用就可以了.

	<select id="getPerson" parameterType="int" resultType="Person">
		SELECT id, name, age FROM person WHERE id=#{id}
	</select>

    

    我個人比較偏愛第二種方法(給包起別名).


    本篇博文源代碼點擊 http://pan.baidu.com/s/1pJXiGVT 下載.


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章