Mybatis 入門案例
阿新 • • 發佈:2020-08-24
之前已經搭好了 Mybatis 的學習環境,下面我們來做一下入門案例;
編寫測試方法
@Test public void testMysatis() throws Exception{ //1、讀取配置檔案 InputStream inputStream = Resources.getResourceAsStream("SqlMapConfig.xml"); //2、建立 SqlSessionFactory 工廠 SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); SqlSessionFactory sqlSessionFactory= builder.build(inputStream); //3、使用 SqlSessionFactory 建立 SqlSession 物件 SqlSession sqlSession = sqlSessionFactory.openSession(); //4、使用 SqlSession 建立 Dao 介面的代理物件 IUserDao iUserDao = sqlSession.getMapper(IUserDao.class); //5、使用 代理物件執行 具體方法 List<User> users = iUserDao.getAll();for(User user:users){ System.out.println (user); } //6、釋放資源 sqlSession.close(); inputStream.close(); }
執行測試方法得到如下結果:
ser{id=41, username='老王', birthday=Tue Feb 27 17:47:08 CST 2018, sex='男', address='北京'} User{id=42, username='小二王', birthday=Fri Mar 02 15:09:37 CST 2018, sex='女', address='北京金燕龍'} User{id=43, username='小二王', birthday=Sun Mar 04 11:34:34 CST 2018, sex='女', address='北京金燕龍'} User{id=45, username='傳智播客', birthday=Sun Mar 04 12:04:06 CST 2018, sex='男', address='北京金燕龍'} User{id=46, username='老王', birthday=Wed Mar 07 17:37:26 CST 2018, sex='男', address='北京'} User{id=48, username='小馬寶莉', birthday=Thu Mar 08 11:44:00 CST 2018, sex='女', address='北京修正'}
注意事項:
1、之前我們編寫的 Mapper 對映檔案的查詢標籤未指明 返回結果的封裝型別,這樣是存在問題的,需要進行指明查詢結果的封裝型別;如下
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.wdh01.dao.IUserDao"> <!-- 配置查詢所有 id dao 介面方法名,resultType 擦汗尋結果返回資訊封裝型別 --> <select id="getAll" resultType="org.wdh01.domain.User"> SELECT * FROM test.user </select> <!-- 注意事項: resultType 擦汗尋結果返回資訊封裝型別 --> </mapper>
2、執行測試程式之前需要引入 log4j..properties 配置檔案;
需要將配置檔案 放到 resourcse 目錄即可,無需特別關注內容;