Spring和Mybatis的整合總結
1.Mybatis的構造?
1)基礎支撐層。主要就是資料庫的相關的配置。對應開發的時候的配置就是配置資料來源:
資料來源的選擇可以多個選擇。
對應的配置:以C3P0為例:(Spring下配置):
<!-- 配置資料來源-->
<bean id="jdbcDataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass">
<value>oracle.jdbc.driver.OracleDriver</
</property>
<property name="jdbcUrl">
<value>jdbc:oracle:thin:@127.0.0.1:1521:orcl</value>
</property>
<property name="user">
<value>bbs</value>
</property>
<property name="password">
<
</property>
<property name="initialPoolSize">
<value>10</value>
</property>
</bean>
2)SQL對映層:配置相應的SQL語句,要對應到相應的Mapper介面中。
配置相應的介面,比如UserMapper介面:
那麼在SQL配置(UserInfoMapper.xml)檔案裡就有:
<mappernamespace="com.gxa.bj.dao.imp.UserMapper">
裡面的所有的id都為介面的裡方法名。
</mapper>
對應到Spring中:
首先會有一個mybatis.config的配置檔案:(主要就是引入其它的SQL對映檔案):比如:
<?xml version="1.0"encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTDConfig 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<mappers>
<mapper resource="com/gxa/bj/model/UserInfoMapper.xml"/>
<mapper resource="com/gxa/bj/model/ReplyInfoMapper.xml"/>
<mapper resource="com/gxa/bj/model/TitleInfoMapper.xml"/>
<mapper resource="com/gxa/bj/model/TypeInfoMapper.xml"/>
</mappers>
</configuration>
在spring中的配置:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="jdbcDataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml"></property>
</bean>
3)介面層,就是所謂的dao層開發。在spring中要把所有的mapper物件掃描到spring中。
<!-- mapper介面的掃描,必須掃描到介面,掃描的原則是:所有掃描進Spring的Mapper物件,它的命名規則:
首字母小寫,後面的都是按照原有的介面名字定義。
比如UserMapper介面掃描到spring裡,id名為userMapper
-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage"value="com.gxa.bj.dao.imp"></property>
<property name="sqlSessionFactoryBeanName"value="sqlSessionFactory"></property>
</bean>
4)另外,需要配置相應的AOP操作。主要就是針對資料庫的事務的宣告式操作。(pointcut是針對service的業務層進行切入的)。
<!-- 在spring中宣告事務的配置 -->
<bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource"ref="jdbcDataSource" />
</bean>
<!-- 事務增強的配置 -->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<!-- 事務屬性的配置,配置都哪些方法上 -->
<tx:attributes>
<tx:method name="get*"read-only="true"/>
<tx:method name="add*" rollback-for="Exception"/>
<tx:method name="remove*"rollback-for="Exception"/>
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="serviceCut"expression="execution(public *com.gxa.bj.service.*.*(..))" />
<aop:advisor pointcut-ref="serviceCut"advice-ref="txAdvice" />
</aop:config>
其餘的都按照Spring的注入要求注入就可以了。
相關推薦
SpringMvc和Mybatis整合總結
web images bean 技術 數據庫 tro control 自己 alt 1.先配置mybatis,測試讀取數據庫 2.自己測試數據 3.配置spring和springmvc, PS:配置web.xml,這樣就不用getBean了 4.配置Controlle
Spring和mybatis整合 org.mybatis.spring.mapper.MapperScannerConfigurer
註冊 rop repo html itl tar hive mybatis property 在springmvc與mybatis整合時,需要對每一個mapper定義對應的一個MapperFactoryBean,可以使用MapperScannerConfigurer自動掃描
Spring 和Mybatis 整合
inter 映射文件 rem sna import enc -m lap sql 首先我們創建一個Java Project,名稱任意,然後導入所需要包:spring3.1.1, mybatis-3.1.1.jar, mysql-connector-java-5.1.2-be
spring和mybatis整合
ans int idle iso face 整合 testin pac 主配置文件 1 spring和mybatis整合 1.1 整合思路 需要spring通過單例方式管理SqlSessionFactory。 持久層的mapper都需要由spring進行管理
spring和mybatis整合小案例
http myba 效果展示 圖片 tro col mybatis 登錄模塊 -c 案例效果展示: 登錄模塊: 用戶註冊模塊: spring和mybatis整合小案例
Mybatis—spring和mybatis整合(十)
上一篇文章我們講解了《Mybatis—查詢快取(九)》下面我們繼續來講解spring和mybatis整合。 【整合思路】 需要spring通過單例方式管理SqlSessionFactory。 spring和mybatis整合生成代理物件,使用SqlSe
【框架整合】spring 和mybatis整合&&整合後mybatis原始dao開發
整合思路 需要spring通過單例方式管理SqlSessionFactory。 spring和mybatis整合生成代理物件,使用SqlSessionFactory建立SqlSession。(spring和mybatis整合自動完成) 持久層的mapper都需要由spr
Spring和mybatis整合時報出的錯誤
錯誤: Caused by: org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type 'org.apache.ibatis.ses
spring和mybatis整合之添加事務
多個 指定 runtime tor com ble required org list <!-- 事務管理器 --> <bean id="txManager" class="org.springframework.jdbc.datasour
Spring和Mybatis的整合總結
1.Mybatis的構造? 1)基礎支撐層。主要就是資料庫的相關的配置。對應開發的時候的配置就是配置資料來源: 資料來源的選擇可以多個選擇。 對應的配置:以C3P0為例:(Spring下配置): <!-- 配置資料來源--> <bean id="j
Spring+SpringMVC+MyBatis深入學習及搭建(十四)——SpringMVC和MyBatis整合
文件拷貝 conf lips glib ide doc from ive body 轉載請註明出處:http://www.cnblogs.com/Joanna-Yan/p/7010363.html 前面講到:Spring+SpringMVC+MyBatis深入學習及搭建(
spring同mybatis整合的總結及配置
tlist onf -m cut factory 註入 ood cto wid 1.Spring同mybatis的整合步驟? 整合的代碼: <bean id="dataSource" destroy-method="clo
spring、springmvc和mybatis整合(java config方式)
ada vat req style face sat roo art 實體 之前項目中使用ssm框架大多是基於xml的方式,spring3.0以後就提供java config的模式來構建項目,並且也推薦使用這種方式,自從接觸過springboot後,深深感受到這種純ja
Spring和MyBatis環境整合
SSH框架的結合幾乎家喻戶曉,但是一般的中小專案,使用Spring和MyBatis就夠了,而且MyBatis輕便好使,易上手,值得大家嘗試一次。 開篇簡介: Spring: Spring是一個輕量級的控制反轉(IoC)和麵向切面(AOP)的容器框架。兩個重要模組:Sp
SSM整合——持久層的整合(spring和mybatis的整合)
學完ssm後,需要把三大框架整合起來,下面我們就來看一下。 第一步:搭建環境: 將所需要的jar包匯入,jar包包括: 1.Mybatis核心和Mybatis依賴包 2.Mybatis和spring整合包 3.Spring的jar(包括springmvc的jar包) 4.資料庫驅
整合spring和mybatis
spring-mybatis-druid:整合spring和mybatis,使用阿里公司的druid資料庫的連線池&以下是apache基金會的dbcp連線池 <bean id="myDataSource" class="org.apache.commons.dbcp2
整合spring和mybatis時,異常java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTrans
觸發原因:單方面升級mybatis版本。 mybatis、mybatis-spring版本如下: <dependency> <groupId>org.mybatis</groupId> <artifa
Spring和MyBatis的整合詳解
需要哪些配置檔案? (3個配置檔案) web.xml,springmvc的配置檔案(例子為spring-servlet.xml),spring和mybatis整合的配置檔案(applicationContext.xml) 1、web.xml ============
elasticsearch-query-tookit一款基於SQL查詢elasticsearch程式設計工具包,支援SQL解析生成DSL,支援JDBC驅動,支援和Spring、MyBatis整合
`elasticsearch-query-tookit`是一款基於SQL查詢elasticsearch程式設計工具包,支援SQL解析生成DSL,支援JDBC驅動,支援和Spring、MyBatis整合,提供Java程式設計介面可基於此工具包二次開發 只是重新造了個輪子,
springmvc和mybatis整合(總結)
1)springmvc和mybatis整合流程準備工作:建web工程,匯入mybatis+mybatis-spring+spring+springmvc的jar第一步:(DAO層)在mybatis和spring整合配置檔案中依次配置:dataSource/SqlSessi