Spring Use @Transactional 全注解事务

我叫金正恩 发布于 2012/03/23 16:59
阅读 1K+
收藏 0
<!-- hibernate 整合 -->
<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${mysql.className}" />
<property name="url" value="${mysql.url}" />
<property name="username" value="${mysql.userName}" />
<property name="password" value="${mysql.password}" />
</bean>

<!-- 配置hibernate session -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="myDataSource" />
<property name="packagesToScan" value="com.cmp.domain.**"></property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQL5InnoDBDialect
</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
</bean>

<!-- 配置hibernate 事务 -->
<bean class="org.springframework.orm.hibernate3.HibernateTransactionManager" id="transactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!-- 使用annotation定义事务 -->
<tx:annotation-driven proxy-target-class="true" transaction-manager="transactionManager"/>


public class GoodsService {

@Autowired
private GoodsDao goodsDao;

@Autowired
private Goods2Dao goods2Dao;
@Transactional
public void saveGoods(Goods goods) {

goodsDao.save(goods);
goods2Dao.save(goods);

}
}

goods2Dao.save(goods);会抛出异常但是事务没有回滚N天了没解决。
谁能帮忙看看。
加载中
0
黄龍
黄龍
goods2Dao是接口吗?
0
我叫金正恩
我叫金正恩
全是实体类
0
三阶魔方
三阶魔方

将mysql的autocommit禁用试试。因为mysql的autocommit默认是开启状态。

0
我叫金正恩
我叫金正恩
搞定了忘记设置代理了
我叫金正恩
我叫金正恩
@绿色能源 <!-- 配置hibernate 事务 与jdbctemplate共享事物--> <bean class="org.springframework.orm.hibernate3.HibernateTransactionManager" id="hibTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> <property name="dataSource" ref="dataSource"/> </bean> <tx:annotation-driven proxy-target-class="true" transaction-manager="hibTransactionManager"/>
绿
绿色能源
怎么设置代理?什么意思?我也出现你这样的问题了
返回顶部
顶部