0
点赞
收藏
分享

微信扫一扫

Spring+MyBatis用注解实现声明事务

<context:property-placeholder location="classpath:database.properties"/>

<!--2、配置数据源:DataSource-->

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">

<!--读取数据库配置文件-->

<property name="driverClassName" value="${driver}"/>

<property name="url" value="${url}"/>

<property name="username" value="${user}"/>

<property name="password" value="${pwd}"/>

</bean>

<!--3、注册SqlSessionFactory对象-->

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

<!--注入数据源对象-->

<property name="dataSource" ref="dataSource"/>

<!--读取mybatis配置文件-->

<property name="configLocation" value="classpath:mybatis-config.xml"/>

<!--配置Sql映射文件 dao/*/*.xml:dao包下的所有子包,子包中的所有的xml文件-->

<property name="mapperLocations" value="classpath:smbms/dao/*/*.xml"/>

</bean>

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

<!--注入一个sqlSessionFactory-->

<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>

<!--自动扫描所有Mapper接口所在的基准包-->

<property name="basePackage" value="smbms.dao"/>

</bean>

<!--用注解的方式来装配,扫描基准包-->

<context:component-scan base-package="smbms.service"/>

<!--事务管理部分-->

<!--1、注册事务管理器对象,DataSourceTransactionManager,需要引用数据源组件-->

<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

<property name="dataSource" ref="dataSource"/>

</bean>

<!--开启注解式事务-->

<tx:annotation-driven transaction-manager="txManager"/>

<!--2、配置事务增强,绑定事务管理器,并为不同事务业务方法设置具体的事务规则-->

<!-- <tx:advice id="txAdvice" transaction-manager="txManager">

<tx:attributes>

<tx:method name="find*" propagation="SUPPORTS"/>

<tx:method name="add*" propagation="REQUIRED"/>

<tx:method name="remove*" propagation="REQUIRED"/>

<tx:method name="modify*" propagation="REQUIRED"/>

<tx:method name="*" propagation="REQUIRED"/>

<tx:method name="trans" propagation="REQUIRED"/>

</tx:attributes>

</tx:advice>

&lt;!&ndash;3、配置事务切面,设置切入点,并将事务增强与切入点关联&ndash;&gt;

<aop:config>

<aop:pointcut id="serviceMethod" expression="execution(* smbms.service.*.*(..))"/>

<aop:advisor advice-ref="txAdvice" pointcut-ref="serviceMethod"/>

</aop:config>-->





举报

相关推荐

0 条评论