问题描述
- springmvc+mybatis 事务该怎么配置,请大神详细解答 谢啦
-
我搭建的是maven项目 用springmvc框架 数据库用mybatis管理 ,现在要用到事务了,该怎么配置呢,求大神讲解,每个配置文件该怎么写,还有什么地方该注解什么,详细的说清楚,谢啦
解决方案
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" >
<property name="driverClass" value="${dataSource.className}" />
<property name="jdbcUrl" value="${dataSource.url}" />
<property name="user" value="${dataSource.username}" />
<property name="password" value="${dataSource.password}" />
<!-- 连接关闭时默认将所有未提交的操作回滚。Default: false -->
<property name="autoCommitOnClose" value="true" />
<!-- 当连接池用完时客户端调用getConnection()后等待获取新连接的时间,超时后将抛出 SQLException,如设为0则无限期等待。单位毫秒。Default: 0-->
<property name="checkoutTimeout" value="${cpool.checkoutTimeout}" />
<!-- 初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->
<property name="initialPoolSize" value="${cpool.minPoolSize}" />
<!-- 连接池中保留的最小连接数 -->
<property name="minPoolSize" value="${cpool.minPoolSize}" />
<!-- 连接池中保留的最大连接数。Default: 15 -->
<property name="maxPoolSize" value="${cpool.maxPoolSize}" />
<!-- 最大空闲时间,36000秒(10小时)内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->
<property name="maxIdleTime" value="${cpool.maxIdleTime}" />
<property name="maxIdleTimeExcessConnections" value="${cpool.maxIdleTimeExcessConnections}" />
<!-- 当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->
<property name="acquireIncrement" value="${cpool.acquireIncrement}" />
<!-- 定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 -->
<property name="acquireRetryAttempts" value="${cpool.acquireRetryAttempts}" />
<!-- 两次连接中间隔时间,单位毫秒。Default: 1000 -->
<property name="acquireRetryDelay" value="${cpool.acquireRetryDelay}" />
</bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"></property>
</bean>
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
<property name="rollbackOnCommitFailure" value="true"/>
</bean>
<tx:annotation-driven transaction-manager="transactionManager"/>
<!-- <aop:aspectj-autoproxy /> -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:MyBatis-Configuration.xml"></property>
<property name="dataSource" ref="dataSource" />
<property name="typeAliasesPackage" value="com.tiamaes.gjds.app.bean" />
</bean>
<!-- scan for mappers and let them be autowired -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.tiamaes.gjds.app.persistence" />
</bean>
时间: 2024-10-30 23:47:42