MyBatis若何應用(二)。本站提示廣大學習愛好者:(MyBatis若何應用(二))文章只能為提供參考,不一定能成為您想要的結果。以下是MyBatis若何應用(二)正文
前邊論述了若何在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若何應用(二)的相干材料,異常不錯,具有參考自創價值,願望對年夜家有所贊助!