Javaweb mybatis介面開發實現過程詳解
阿新 • • 發佈:2020-07-28
mapper.xml檔案
<?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"> <!-- 門店表的對映檔案 namespace值為對應介面的全路徑 --> <mapper namespace="com.tedu.dao.DoorMapper"> <!-- 1.查詢所有門店資訊,id值為對應介面中方法的名字 resultType指定將查詢的結果封裝到哪個pojo物件中 --> <select id="findAll" resultType="com.tedu.pojo.Door"> select * from tb_door </select> </mapper>
mapper的介面檔案(介面由我們自己宣告,由Spring-mybatis提供子類實現類)
package com.tedu.dao; import java.util.List; import com.tedu.pojo.Door; /** * DoorMapper介面 * 宣告增刪改查方法,對門店資訊進行操作 */ public interface DoorMapper { /** *介面由我們開發人員負責提供,但介面的實現類(子類)由框架負責提供 *如果不整合mybatis和spring框架,介面的子類例項也是由mybatis負責建立 * 如果整合了mybatis和spring框架,介面的子類例項將會由spring容器負責建立 */ //方法名必須肯mapper檔案中的id值一致 public List<Door> findAll(); }
測試類中呼叫findAll方法
package com.tedu; import java.io.IOException; import java.io.InputStream; import java.util.List; 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 org.apache.jasper.tagplugins.jstl.core.ForEach; import org.junit.Test; import com.tedu.dao.DoorMapper; import com.tedu.pojo.Door; /** * mybatis的入門案例: 查詢yonghedb.emp表中的所有員工資訊 */ public class TestMybatis01 { /* 練習1: 查詢emp中的所有員工資訊 */ @Test public void testFindAll01() throws Exception { //1.讀取mybatis核心配置檔案(mybatis-config.xml),Resources是mybatis提供的工具類 InputStream in = Resources.getResourceAsStream("mybatis/mybatis-config.xml"); //2.通過配置資訊獲取SqlSession工廠物件 SqlSessionFactory fac = new SqlSessionFactoryBuilder().build( in ); //3.獲取SQLSession物件(開啟與資料庫的連線) SqlSession session = fac.openSession(); //4.獲取Doormapper子類例項 DoorMapper doormapper = session.getMapper(DoorMapper.class); List<Door> lis = doormapper.findAll(); //5.輸出結果 for (Door door : lis) { System.out.println(door); } } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。