一、整合思路
整合步骤:
applicationContext.XML的配置:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" 4 xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" 5 xsi:schemaLocation="http://www.springframework.org/schema/beans 6 http://www.springframework.org/schema/beans/spring-beans-3.2.xsd 7 http://www.springframework.org/schema/aop 8 http://www.springframework.org/schema/aop/spring-aop-3.2.xsd 9 http://www.springframework.org/schema/tx 10 http://www.springframework.org/schema/tx/spring-tx-3.2.xsd "> 11 12 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" 13 destroy-method="close"> 14 <property name="driverClassName" value="com.mysql.jdbc.Driver" /> 15 <!-- <property name="url"> 16 <value><![CDATA[jdbc:mysql://127.0.0.1:3306/smbms? 17 useUnicode=true&characterEncoding=utf-8]]></value> 18 </property> --> 19 <property name="url" value="jdbc:mysql://127.0.0.1:3306/smbms? 20 useUnicode=true&characterEncoding=utf-8" /> 21 <property name="username" value="root" /> 22 <property name="password" value="root" /> 23 </bean> 24 25 <!-- 配置SqlSessionFactoryBean --> 26 <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> 27 <!-- 引用数据源组件 --> 28 <property name="dataSource" ref="dataSource" /> 29 <!-- 引用MyBatis配置文件中的配置 --> 30 <property name="configLocation" value="classpath:mybatis-config.xml" /> 31 <!-- 配置SQL映射文件信息 --> 32 <property name="mapperLocations"> 33 <list> 34 <value>classpath:cn/smbms/dao/**/*.xml</value> 35 </list> 36 </property> 37 </bean> 38 <!-- 配置SqlSessionTemplate --> 39 <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate"> 40 <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory" /> 41 </bean> 42 <!-- 配置DAO --> 43 <bean id="userMapper" class="cn.smbms.dao.user.UserMapperImpl"> 44 <property name="sqlSession" ref="sqlSessionTemplate" /> 45 </bean> 46 <!-- 配置业务Bean --> 47 <bean id="userService" class="cn.smbms.service.user.UserServiceImpl"> 48 <property name="userMapper" ref="userMapper" /> 49 </bean> 50 </beans>
注入映射器的实现
为业务层添加声明式事务
1 <context:component-scan base-package="cn.smbms.service" /> 2 <!-- 定义事务管理器 --> 3 <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> 4 <property name="dataSource" ref="dataSource"></property> 5 </bean> 6 <tx:advice id="txAdvice"> 7 <tx:attributes> 8 <tx:method name="find*" propagation="SUPPORTS" /> 9 <tx:method name="add*" propagation="REQUIRED" /> 10 <tx:method name="del*" propagation="REQUIRED" /> 11 <tx:method name="update*" propagation="REQUIRED" /> 12 <tx:method name="*" propagation="REQUIRED" /> 13 </tx:attributes> 14 </tx:advice> 15 <!-- 定义切面 --> 16 <aop:config> 17 <aop:pointcut id="serviceMethod" 18 expression="execution(* cn.smbms.service..*.*(..))" /> 19 <aop:advisor advice-ref="txAdvice" pointcut-ref="serviceMethod" /> 20 </aop:config>
使用注解实现事务处理
原文:https://www.cnblogs.com/1097123611-abc/p/10417875.html