SSH中Transaction not successfully started解决方法
2009年01月04日 星期日 下午 12:15
org.springframework.transaction.TransactionSystemException: Could not commit Hibernate transaction; nested exception is org.hibernate.TransactionException: Transaction not successfully started 最近在写操作CLOB的过程中总是报这个异常,数据去插入进去了.
先看看SessionFactory.getCurrentSession与openSession的区别 1. 如果使用的是getCurrentSession来创建session的话,在commit后,session就自动被关闭了, 也就是不用再session.close()了。但是如果使用的是openSession方法创建的session的话, 那么必须显示的关闭session,也就是调用session.close()方法。这样commit后,session并没有关闭 /*2. getCurrentSession的使用可以参见hibernate\hibernate-3.2\doc\tutorial\src项目 3. 使用SessionFactory.getCurrentSession()需要在hibernate.cfg.xml中如下配置: * 如果采用jdbc独立引用程序配置如下: <property name="hibernate.current_session_context_class">thread</property> * 如果采用了JTA事务配置如下 <property name="hibernate.current_session_context_class">jta</property>*/
开始用的:
Session session = this.getHibernateTemplate().getSessionFactory().getCurrentSession(); Transaction tran=session.beginTransaction();
好多文章里都说只需在Spring配置<bean id="sessionFactory"...---><property name="hibernateProperties"> 中加入 <prop key="hibernate.current_session_context_class">thread</prop>就可以解决,试了没用.
修改后的:
Session session = this.getHibernateTemplate().getSessionFactory().openSession();
Transaction tran=session.beginTransaction();
......
finally { session.close(); }
问题解决
|
分享到:
相关推荐
Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: JDBC rollback failed 这表明Hibernate事务回滚操作失败,导致事务不能正确回滚。 二、问题原因 该问题的...
之前一直找原因,最后知道了解决方法,具体请下载源码查看。特别是用到throw的事务中
在SSH项目中,正确配置Hibernate的jar包是确保数据库操作顺利进行的关键步骤。 该压缩包“SSH中Hibernate所需基本jar包”包含了运行Hibernate所必需的库文件,这些文件通常会包括以下几类: 1. **Hibernate核心库*...
在SSH(Struts2、Spring、Hibernate)框架组合中,事务管理是确保数据一致性与完整性的关键机制。SSH是一个常见的Java Web开发栈,用于构建高效、模块化且可维护的应用程序。下面我们将深入探讨SSH中的事务管理和...
SSH框架的常见问题和解决方法 SSH框架是Java领域中非常流行的持久化框架,它提供了强大的数据访问能力和灵活的映射机制。下面我们将讨论SSH框架的常见问题和解决方法。 1、Hibernate工作原理及为什么要用? ...
赠送jar包:javax.transaction-api-1.2.jar; 赠送原API文档:javax.transaction-api-1.2-javadoc.jar; 赠送源代码:javax.transaction-api-1.2-sources.jar; 赠送Maven依赖信息文件:javax.transaction-api-1.2....
### SSH整合常见错误总结 #### 一、Java.lang.NoClassDefFoundError: org/hibernate/context/CurrentSessionContext **问题描述**:在启动应用时遇到`java.lang.NoClassDefFoundError: org/hibernate/context/...
赠送jar包:javax.transaction-api-1.2.jar; 赠送原API文档:javax.transaction-api-1.2-javadoc.jar; 赠送源代码:javax.transaction-api-1.2-sources.jar; 赠送Maven依赖信息文件:javax.transaction-api-1.2....
本文将深入探讨“C#中调用Transaction”的相关知识点,包括事务的基本概念、事务的特性、如何在C#代码中创建和管理事务,以及与数据库交互时事务的应用。 ### 1. 事务基本概念 事务是数据库操作的一组逻辑单元,它...
在使用maven开发web项目极大地方便了jar包的依赖,在测试时也可以集成Servlet容器,从启动速度和量级上看,Jetty无疑是不二选择,然而从8.x开始,如果你的web项目中不包含数据库访问(或者说没有事务管理器)的话,...
SSH2(Spring、Struts2、Hibernate)是Java开发中常用的三大框架,它们分别负责不同层面的应用:Spring作为全面的轻量级应用框架,Struts2处理MVC模式中的视图与控制器,Hibernate则专注于对象关系映射(ORM),简化...
Transaction Timeout(解决方案).md
【javax.transaction.jar】是Java平台上的一个核心组件,主要用于处理分布式环境中的事务管理。这个库包含了一组接口和类,这些接口和类定义了事务管理的API,使得开发者能够在Java应用程序中实现事务处理的规范。在...
在描述中提到的"ssh中getCurrentSession的使用",实际上可能是指在SSH集成框架中使用Hibernate框架时,获取数据库会话(Session)的方法。 在Hibernate中,`getCurrentSession()`是SessionFactory类的一个方法,它...
在SSH2(Spring、Struts2、Hibernate2)框架中,`select`下拉框是网页表单中常用的一种元素,用于提供用户选择一个或多个选项的界面。它通常与后端服务进行交互,用于从服务器获取数据并显示在前端。在本教程中,...
SSH(Struts2、Spring、Hibernate)是Java开发中常用的一种技术栈,主要用于构建企业级Web应用程序。这个压缩包中的jar文件是这三个框架的核心库,对于理解和使用SSH框架至关重要。以下将详细介绍这些框架以及它们...
SSH框架,全称为Spring、Struts和Hibernate,是Java Web开发中的一个经典组合。这个框架集合了Spring的IoC(Inversion of Control)和AOP(Aspect Oriented Programming)功能,Struts的MVC(Model-View-Controller...
在这个特定的场景中,我们要探讨如何在SSH框架下将Excel表格数据导入到MySQL数据库。这个过程涉及到几个关键的技术点,包括文件读取、数据解析、数据库操作以及异常处理。 首先,我们需要使用Java API来读取Excel...
根据提供的文件信息,可以提炼出以下与“Principles of transaction processing”相关的知识点: 1. 事务处理的原理 事务处理系统是计算机系统的一个重要组成部分,它涉及到如何高效、安全地处理各种事务。事务处理...
通过分析源码,可以深入理解SSH框架如何在实际项目中协同工作,以及如何解决特定业务场景下的问题。 “工具”标签可能暗示项目中使用了一些辅助开发的工具,如IDE、版本控制系统(如Git)、构建工具(如Maven或...