声明式事务的配置笔记

请注意,本文编写于 123 天前,最后修改于 123 天前,其中某些信息可能已经过时。

声明式事务

1.配置XML加入context:component-scan标签,spring就会去自动扫描base-package对应的路径或者该路径的子包下面的java文件,如果扫描到文件中带有@Service,@Component,@Repository,@Controller等这些注解的类,则把这些类注册为bean
<context:component-scan base-package="包名"></context:component-scan>

2.引入外部配置文件
<context:property-placeholder location="类路径下的配置文件地址" />

3.配置数据源
<bean id="pooledDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    <property name="user" value="${jdbc.username}"></property>
    <property name="password" value="${jdbc.password}"></property>
    <property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property>
    <property name="driverClass" value="${jdbc.driverClass}"></property>
</bean>

4.配置JdbcTemplate操作数据库
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
    <property name="dataSource" value="#{pooledDataSource}"></property>
</bean>

5.  配置声明式事务
        1)、Spring中提供事务管理器(事务切面),配置这个事务管理器
        2)、开启基于注解的事务式事务;依赖tx名称空间
        3)、给事务方法加注解
        
//配置事务管理器
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="pooledDataSource"></property>
</bean>

//给需要回滚事务的方法加上@Transactional注解

//开启基于注解的事务式事务;依赖tx名称空间
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/>

添加新评论

请不要水评论

评论列表