MyBatis如何使用(二)

NO IMAGE
1 Star2 Stars3 Stars4 Stars5 Stars 給文章打分!
Loading...

前邊闡述瞭如何在java專案中使用mybatis,我們使用的是對映檔案的方式,在獲得具體的資料操作方法時需要傳入對映檔案中namespace “.”方法名稱,這種方式有時候會感覺很不爽,很麻煩。我們在開發中不是常說要面向介面變成嗎,mybatis也支援介面,下面在前面的例子的基礎上做相應修改。

前面的例子的環境及對映檔案均保持不變,如下是我的對映檔案,


<mapper namespace="com.cn.inter.IMessageOperation">
<select id="selectUserByID" parameterType="int" resultType="com.cn.imooc.entity.Message">
select * from `message` where id = #{id}
</select>
<select id="selectMessages" resultType="Message">
select id,
command,
description,
comment
from message;
</select>
</mapper>

我們可以看到裡邊有namespace為com.cn.inter.ImessageOperation,現在我們建立這樣一個包,com.cn.inter,在此包中建立介面IMessageOperation,介面中有一個方法,方法的簽名為:public Message selectUserByID(Integer id);

我們建立的介面和對映檔案做了一致對應,包括了方法名、返回值、引數列表。下面看測試方法


package com.cn.test;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.cn.imooc.entity.Message;
import com.cn.inter.IMessageOperation;
public class MyTest2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Reader reader;
SqlSession sqlSession=null;
try{
//從類路徑下(src)讀取mybatis配置檔案
reader=Resources.getResourceAsReader("Configuration.xml");
SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(reader);
sqlSession=sqlSessionFactory.openSession();
//獲得IMessageOperation介面
IMessageOperation imo=sqlSession.getMapper(IMessageOperation.class);
//呼叫介面的方法返回查詢結果
Message message=imo.selectMessageByIdI(new Integer(3));
System.out.println(message);
}
catch(Exception e){
e.printStackTrace();
}finally{
//如果sqlSession不為空,則關閉
if(null!=sqlSession)
sqlSession.close();
}
}
}

我們可以看到測試方法中呼叫資料操作的方法發生了變化,我們是先獲得一個IMessageOperation的介面,然後呼叫其selectMessageByID方法,最後得到結果。可以感覺到比上一篇中的方式更加簡單了,也更符合我們日常的編碼規範了。

綜合這兩篇內容中的方式,使用任何一種都是可以的,只是兩種不同的方式而已,我個人更傾向於後者。

以上所述是小編給大家介紹的MyBatis如何使用(二)的相關資料,非常不錯,具有參考借鑑價值,希望對大家有所幫助!

您可能感興趣的文章:

MyBatis如何使用(一)MyBatis入門初體驗之使用大全(2)Java的MyBatis框架中Mapper對映配置的使用及原理解析MyBatis學習教程(二)—如何使用MyBatis對users表執行CRUD操作Mybatis學習總結之mybatis使用建議整理Java的MyBatis框架中一些重要的功能及基本使用示例oracle mybatis 使用動態Sql當插入欄位不確定的情況下實現批量insertMyBatis如何使用(三)

相關文章

程式語言 最新文章