急死人了,spring3.2.4+mybatis3.2.2事务管理无效?
急死人了
<!-- 数据访问 -->
<bean id="test.sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="test.dataSource" />
<property name="configLocation" value="/WEB-INF/mybatis/mybatis-config.xml"></property>
</bean>
<bean id="test.sqlMapper" abstract="true" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="sqlSessionFactory" ref="test.sqlSessionFactory" />
</bean>
<!-- 事务管理 -->
<bean id="test.transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="test.dataSource"></property>
</bean>
<!-- 启用注解事务 -->
<tx:annotation-driven transaction-manager="test.transactionManager"/>
使用@Transactional注解接口中的一个方法,然后在实现的方法里手动抛出一个runtime异常,发现根本不回滚,急死了要
------解决方案--------------------<bean id="test.transactionManager"> 中加:
<property name="jpaDialect">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaDialect" />
</property>
------解决方案--------------------
我是说你的类有没写好注解啊之类的
------解决方案--------------------我刚刚遇到过这样的清空,
用mysql建表默认不是innoDB,所以即使我程序里面是带事物的,也无效。
后来把数据表结构改成了支持事物的innoDB就好了
------解决方案--------------------在applicationContent.xml中声明事务
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource">
<ref local="dataSource"></ref>
</property>
</bean>
<!-- 声明式事务管理 -->
<bean id="baseTransactio