@Transactional配置事务未提交到数据库

yjyq61 yjyq61 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
小弟在研究事务,目前在学习@Transactional来配置全局事务,但无法更新数据库,请大哥们指点一下

appliactioncontext.xml
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="username" value="scott"></property>
<property name="password" value="tiger"></property>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="mappingResources">
<list>
<value>com/data/UserInfo.hbm.xml</value>
</list>
</property>
<!-- 方言 -->
<property name="hibernateProperties">
<value>
hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
</value>
</property>
</bean>
<!-- 事务管理器 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<tx:annotation-driven transaction-manager="transactionManager"/>

DAO层
@Repository("workoutBusiness")
@Transactional
public class WorkoutBusiness implements IWorkoutBusiness {
@Resource(name="sessionFactory")
SessionFactory sessionFactory;
@Transactional(propagation=Propagation.REQUIRED)
public void saveNewUser(UserInfo user) {
// Session session = sessionFactory.openSession();
Session session = sessionFactory.getCurrentSession();
// Transaction tran = session.beginTransaction();
// tran.begin();
session.save(user);
//tran.commit();
//session.close();
}

}

使用HIBERNATE的事务提交后能插进数据,但用spring @Transactionnal就没反映,也没报错。。。。
...全文

相关推荐

spring分别与jdbc和hibernate结合的事务控制--案例

如果方法抛出未检查异常,Spring会自动回滚事务;而如果抛出检查异常并配置了相应的异常规则,事务也可能被回滚。

zxhbjz5

深入理解数据库事务处理与隔离级别

本文深入探讨了Spring框架中数据库事务的配置与使用,特别是声明式事务的应用。首先介绍了如何配置Spring数据库连接池,然后通过对比编程式事务与声明式事务,强调了后者的优势。接着详细解析了@Transactional注解的使用方法和事务管理器的配置。此外,文章还详细讨论了事务隔离级别的重要性,包括不同隔离级别对并发事务处理的影响,以及如何通过隔离级别来防止脏读、不可重复读和幻读等问题。

魔王不造反

spring的@Transactional注解用法解读

**连接关闭时的事务处理** 关闭连接时,如果有未提交的事务,C3P0默认会回滚这些事务。这是为了保持数据一致性,尽管不同数据库驱动可能有不同的策略。

weixin_38655284

transaction

事务隔离级别**Java和数据库系统支持四种事务隔离级别:- **读未提交(READ UNCOMMITTED)**- **读已提交(READ COMMITTED)**- **可重复读(REPEATABLE

u011033176

spring-mybatis事务管理配置与@Transactional注解使用转可编辑范本(1).doc

在实际应用中,Spring通过事务管理器和数据源配置关闭了数据库的自动提交模式,以便事务可以包含多条语句,并且Spring还处理了连接关闭时未提交事务的问题。

huono2599
评论 9
收藏 已收藏
分享
返回顶部
yjyq61
Java EE 67,535 成员 225,843 内容