1. 程式人生 > >Spring和Mybatis的整合總結

Spring和Mybatis的整合總結

1.Mybatis的構造?

1)基礎支撐層。主要就是資料庫的相關的配置。對應開發的時候的配置就是配置資料來源:

 資料來源的選擇可以多個選擇。

 對應的配置:以C3P0為例:(Spring下配置):

<!-- 配置資料來源-->

  <bean id="jdbcDataSource"

     class="com.mchange.v2.c3p0.ComboPooledDataSource">

     <property name="driverClass">

       <value>oracle.jdbc.driver.OracleDriver</

value>

     </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">

       <

value>123</value>

     </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介面的掃描,必須掃描到介面,掃描的原則是:所有掃描進SpringMapper物件,它的命名規則:

首字母小寫,後面的都是按照原有的介面名字定義。

比如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的注入要求注入就可以了。

相關推薦

SpringMvcMybatis整合總結

web images bean 技術 數據庫 tro control 自己 alt 1.先配置mybatis,測試讀取數據庫 2.自己測試數據 3.配置spring和springmvc, PS:配置web.xml,這樣就不用getBean了 4.配置Controlle

Springmybatis整合 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

springmybatis整合

ans int idle iso face 整合 testin pac 主配置文件 1 spring和mybatis整合 1.1 整合思路 需要spring通過單例方式管理SqlSessionFactory。 持久層的mapper都需要由spring進行管理

springmybatis整合小案例

http myba 效果展示 圖片 tro col mybatis 登錄模塊 -c 案例效果展示: 登錄模塊: 用戶註冊模塊: spring和mybatis整合小案例

Mybatisspringmybatis整合(十)

上一篇文章我們講解了《Mybatis—查詢快取(九)》下面我們繼續來講解spring和mybatis整合。 【整合思路】 需要spring通過單例方式管理SqlSessionFactory。 spring和mybatis整合生成代理物件,使用SqlSe

【框架整合spring mybatis整合&&整合mybatis原始dao開發

整合思路 需要spring通過單例方式管理SqlSessionFactory。 spring和mybatis整合生成代理物件,使用SqlSessionFactory建立SqlSession。(spring和mybatis整合自動完成) 持久層的mapper都需要由spr

Springmybatis整合時報出的錯誤

錯誤: Caused by: org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type 'org.apache.ibatis.ses

springmybatis整合之添加事務

多個 指定 runtime tor com ble required org list <!-- 事務管理器 --> <bean id="txManager" class="org.springframework.jdbc.datasour

SpringMybatis整合總結

1.Mybatis的構造? 1)基礎支撐層。主要就是資料庫的相關的配置。對應開發的時候的配置就是配置資料來源:  資料來源的選擇可以多個選擇。  對應的配置:以C3P0為例:(Spring下配置): <!-- 配置資料來源-->   <bean id="j

Spring+SpringMVC+MyBatis深入學習及搭建(十四)——SpringMVCMyBatis整合

文件拷貝 conf lips glib ide doc from ive body 轉載請註明出處:http://www.cnblogs.com/Joanna-Yan/p/7010363.html 前面講到:Spring+SpringMVC+MyBatis深入學習及搭建(

springmybatis整合總結及配置

tlist onf -m cut factory 註入 ood cto wid 1.Spring同mybatis的整合步驟? 整合的代碼: <bean id="dataSource" destroy-method="clo

spring、springmvcmybatis整合(java config方式)

ada vat req style face sat roo art 實體   之前項目中使用ssm框架大多是基於xml的方式,spring3.0以後就提供java config的模式來構建項目,並且也推薦使用這種方式,自從接觸過springboot後,深深感受到這種純ja

SpringMyBatis環境整合

SSH框架的結合幾乎家喻戶曉,但是一般的中小專案,使用Spring和MyBatis就夠了,而且MyBatis輕便好使,易上手,值得大家嘗試一次。   開篇簡介:   Spring: Spring是一個輕量級的控制反轉(IoC)和麵向切面(AOP)的容器框架。兩個重要模組:Sp

SSM整合——持久層的整合springmybatis整合

學完ssm後,需要把三大框架整合起來,下面我們就來看一下。 第一步:搭建環境: 將所需要的jar包匯入,jar包包括: 1.Mybatis核心和Mybatis依賴包 2.Mybatis和spring整合包 3.Spring的jar(包括springmvc的jar包) 4.資料庫驅

整合springmybatis

spring-mybatis-druid:整合spring和mybatis,使用阿里公司的druid資料庫的連線池&以下是apache基金會的dbcp連線池 <bean id="myDataSource" class="org.apache.commons.dbcp2

整合springmybatis時,異常java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTrans

觸發原因:單方面升級mybatis版本。 mybatis、mybatis-spring版本如下: <dependency> <groupId>org.mybatis</groupId> <artifa

SpringMyBatis整合詳解

需要哪些配置檔案? (3個配置檔案)    web.xml,springmvc的配置檔案(例子為spring-servlet.xml),spring和mybatis整合的配置檔案(applicationContext.xml) 1、web.xml ============

elasticsearch-query-tookit一款基於SQL查詢elasticsearch程式設計工具包,支援SQL解析生成DSL,支援JDBC驅動,支援SpringMyBatis整合

  `elasticsearch-query-tookit`是一款基於SQL查詢elasticsearch程式設計工具包,支援SQL解析生成DSL,支援JDBC驅動,支援和Spring、MyBatis整合,提供Java程式設計介面可基於此工具包二次開發  只是重新造了個輪子,

springmvcmybatis整合總結

1)springmvc和mybatis整合流程準備工作:建web工程,匯入mybatis+mybatis-spring+spring+springmvc的jar第一步:(DAO層)在mybatis和spring整合配置檔案中依次配置:dataSource/SqlSessi