Spring與mybatis的整合實踐之SqlSessionTemplate持久化模板詳解
今天用SqlSessionTemplate持久化模板來整合spring和mybatis,其實差別不大,就是spring的配置檔案裡改一下,測試類改一下就可以了,如下
這是spring控制檔案的主要內容,需要注意的就是不要忘了把sqlsession注入測試類
<!--建立jdbc資料來源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="jdbc:oracle:****:*****:1521:****" /> <property name="username" value="****" /> <property name="password" value="****" /> </bean> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="configLocation" value="classpath:com/Template/configuration.xml" /> </bean> <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate"> <constructor-arg index="0" ref="sqlSessionFactory" /> </bean> <bean id="customerTest" class="com.Template.Test"> <property name="sqlSession" ref="sqlSession" /> </bean>
這是測試類,由於這是SqlSessionTemplate,所以不需要繼承
import javax.annotation.Resource; import org.mybatis.spring.SqlSessionTemplate; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Test{ @Resource public SqlSessionTemplate sqlSession; public static void main(String[] args) { // TODO Auto-generated method stub new Test().firstTest(); } public void setSqlSession(SqlSessionTemplate sqlSession) { this.sqlSession = sqlSession; } public void firstTest() { BeanFactory factory = new ClassPathXmlApplicationContext("com/Template/applicationContext.xml"); Test test = (Test)factory.getBean("customerTest"); Customer cus = (Customer)test.sqlSession.selectOne("selectCustomer",10696); System.out.println(cus); } }
總結:用抽象類和模板的區別就是,測試類中由於SqlSessionTemplate不需要繼承,所以傳值時需要手動寫setter方法傳值,而抽象類由於是繼承的,所以自動賦值。手動賦值的時候需要特別注意的是,<property name="sqlSession" ref="sqlSession" />這裡的name就是屬性名,寫setter方法的時候就是參照它寫的,所以setter方法的命名就好辦了。
相關推薦
Spring與mybatis的整合實踐之SqlSessionTemplate持久化模板詳解
今天用SqlSessionTemplate持久化模板來整合spring和mybatis,其實差別不大,就是spring的配置檔案裡改一下,測試類改一下就可以了,如下 這是spring控制檔案的主要內容,需要注意的就是不要忘了把sqlsession注入測試類 <!--
Spring(4)之 Spring與Mybatis整合
Spring與Mybatis整合 整合思路 Spring管理:Mybatis的 SqlSessionFactory、Mapper 第一步:整合dao 第二步:新增事務管理 第三步:整合service、Spring管理Service介面、service通過IOC容器呼叫Dao(ma
Mybatis原始碼分析之Spring與Mybatis整合MapperScannerConfigurer處理過程原始碼分析
前面文章分析了這麼多關於Mybatis原始碼解析,但是我們最終使用的卻不是以前面文章的方式,編寫自己mybatis_config.xml,而是最終將配置融合在spring的配置檔案中。有了前面幾篇部落格的分析,相信這裡會容易理解些關於Mybatis的初始化及
Spring與Mybatis整合
base package div classpath conf data pac 是否 ner 一 概述 1.整合的目的 將Mapper映射器的創建任務交給Spring容器。 二 具體實現 1.創建sqlSessionFactory: <bean id="sql
SSM整合(2): spring 與 mybatis 整合
分享 eth point names space json cal 返回 autowired 在進行完spring與springmvc整合之後, 繼續 spring與mybatis的整合. 既然是操作數據庫, 那必然不能缺少了連接屬性 一. db.properties j
spring學習 六 spring與mybatis整合
spring整合 acl nfa stat 工廠設計 eas ctype tin http 在mybatis學習中有兩種配置文件 :全局配置文件,映射配置文件。mybatis和spring整合,其實就是把mybatis中的全局配置文件的配置內容都變成一個spring容器
【Spring與MyBatis整合】
準備工作(MyBatis基本): 1.匯入mybatis-spring、spring-jdbc、spring-tx三個jar包 2.編寫實體類、Mapper介面、Mapper.xml 3.編寫mybatis-config.xml核心配置檔案 整合步驟(基本): 1.匯入commons-dbc
Spring與MyBatis整合錯誤:nested exception is java.lang.NoClassDefFoundError
最近在學習整合Spring與MyBatis時,出現了以下異常: Error creating bean with name 'sqlSessionFactoryBean' defined in class path resource [application-mybatis
Spring與MyBatis整合優化
前言 在上一篇文章中,我們使用了老老實實的方式對兩個框架進行了整合,我們在每一個服務層元件都聲明瞭一個SqlSessionTemplate物件,在呼叫資料層的時候通過getMapper()方法對映得到某個介面,然後呼叫裡面的方法。 直接在業務元件呼叫getMapper()
Mybatis 坑路5 -> Spring 與 MyBatis 整合 + 基於註解的 SQL 對映器
##Spring 與 MyBatis 整合 + 基於註解的 SQL 對映器 依賴的 Jar 包 Mybatis 與 Spring 依賴的 Jar 包如下: mybatis-3.3.0.jar mybatis-spring-1.2.3.jar SpringFr
spring(三) spring與mybatis整合
作為Bean容器,spring框架提供了IOC機制,可以接管所有元件的建立工作,並管理,整合的主要目標就是將mybatis的核心元件方放到spring中。 具體的是mybatis的核心是獲取sqlSession物件,而sqlSession物件依賴於SqlSessionFac
整理不易,且整且珍惜 2.開發環境的搭建 3.Eclipse的相關配置 4.使用maven建立web專案 5.Spring+Mybatis+SpringMVC整合 6.mybatis自動生成程式碼 7.spring與mybatis整合中Junit的測試 8.maven專案的啟動 9.Restful
整理不易,且整且珍惜 2.開發環境的搭建 3.Eclipse的相關配置 4.使用maven建立web專案 5.Spring+Mybatis+SpringMVC整合 6.mybatis自動生成程式碼
spring與mybatis整合及事務控制
一. 簡介 本文將會使用spring整合mybatis, 並新增事務管理, 以此為記, 方便以後查閱。 二. 例子 1. 程式碼結構圖: 2. 建表語句: DROP DATABASE test; CREATE DATABASE test; USE test
Sharding-Sphere 3.X 與spring與mybatis整合(分庫分表)demo
最近在弄這個sharding-sphere,公司內部分庫分表是在此業務程式碼上進行邏輯分庫分表,但是這種總是不好,也調研了幾款分庫分表中介軟體、mycat、網易cetus、阿里DRDS、這幾種就是背景強大,大公司經過大量的實戰,成熟度很高,而框架sharding-sphere
Spring與MyBatis整合--配置檔案
在JAVA專案下建立lib資料夾,將jar包放進lib資料夾,進行配置。將MyBatis的配置檔案mybatis-config.xml和Spring的配置檔案app.xml放在src目錄下。 這是mybatis的配置檔案 這是Spring的配置檔
日常Exception(五):spring與mybatis整合時報錯
問題:最近在整合SSM框架,搭建一半之後(即專案建立完畢,spring與mybatis整合完畢),開始測試spring與mybatis是否整合成功。貼出部分程式碼:/** * 配置spring和junit整合,junit啟動時載入springIOC容器 spring-tes
spring 與 mybatis整合,mybatis註解不起作用
一、首先配置好基礎的資料來源及註解管理器 <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><pro
MyBatis原始碼分析之@SelectProvider註解使用詳解
MyBatis原始碼分析之@SelectProvider註解使用詳解 之前講了MyBatis的配置、plugin、Select查詢,還有@MapKey註解的使用與原理,還有返回@ResultMap等等,我原想直接從MyBatis的快取開始說起,但是想想還是得說一下MyBatis中的@
25.C++- 泛型編程之函數模板(詳解)
bsp 構造 指定 idt 可執行 檢查 自動轉換 泛型編程 inf 1)初探函數模板 2)深入理解函數模板 3)多參函數模板 4)重載函數模板 當我們想寫個Swap()交換函數時,通常這樣寫: 但是這個函數僅僅只能支持int類型,如果我們想實現交換double,fl
JavaEE Spring與MyBatis的整合之傳統DAO方式整合(教材學習筆記)
在實際開發中MyBatis都是與Spring整合在一起使用的,在之前學習了MyBatis與Spring,現在來學習如何使他們整合 首先建立一個名為chapter10的web專案 一、環境搭建 1.準備好所有的有關jar包,具體如下: 將上面所有jar包新增到專案lib目錄下