hibernate 乐观锁 异常没有抛出问题 StaleObjectStateException

问题描述

在java程序内采用hibernate乐观锁,版本号后台数据库有增加,但用trycatch捕捉不到StaleObjectStateException异常。<versionname="theversion"column="theversion"type="java.lang.Integer"/>求救!谢谢!

解决方案

解决方案二:
各位有没有碰到类似问题!谢谢!

时间: 2024-12-10 08:36:12

hibernate 乐观锁 异常没有抛出问题 StaleObjectStateException的相关文章

Hibernate乐观锁的实现原理剖析与使用乐观锁时的注意点

Hibernate支持乐观锁.当多个事务同时对数据库表中的同一条数据操作时,如果没有加锁机制的话,就会产生脏数据(duty data).Hibernate有2种机制可以解决这个问题:乐观锁和悲观锁.这里我们只讨论乐观锁. Hibernate乐观锁,能自动检测多个事务对同一条数据进行的操作,并根据先胜原则,提交第一个事务,其他的事务提交时则抛出org.hibernate.StaleObjectStateException异常. Hibernate乐观锁是怎么做到的呢? 我们先从Hibernate乐

java-Java异常的抛出问题。

问题描述 Java异常的抛出问题. 做一个计算器.ArithmeticException属于运行时异常.5.最佳解决方案对于运行时异常,我们不要用try...catch来捕获处理,而是在程序开发调试阶段,尽量去避免这种异常,一旦发现该异常,正确的做法就会改进程序设计的代码和实现方式,修改程序中的错误,从而避免这种异常.捕获并处理运行时异常是好的解决办法,因为可以通过改进代码实现来避免该种异常的发生. 他明明说了,我们不要用try...catch来捕获处理,而是在程序开发调试阶段,尽量去避免这种异

SRVE0068E: 未捕获到 servlet CXFServlet 的其中一个服务方法中抛出的异常。抛出的异常:java.lang.IncompatibleClassChangeError

问题描述 RT.[08-10-2516:37:40:421CST]00000030ServletWrappeESRVE0068E:未捕获到servletCXFServlet的其中一个服务方法中抛出的异常.抛出的异常:java.lang.IncompatibleClassChangeErroratorg.apache.cxf.wsdl11.ServiceWSDLBuilder.addExtensibiltyElements(ServiceWSDLBuilder.java:227)atorg.apa

请教Hibernate乐观锁和悲观锁相关问题

问题描述 1.这两个锁仅仅是用来解决并发的问题, 防止多人同时操作同一数据造成错误的吗? 2.如果只是用来解决并发操作同一数据的问题, 数据库的隔离级别不就是干这个的吗, 那 乐观锁和悲观锁还有什么意义? 3.是不是隔离级别和锁用一种就可以了, 因为他们解决的是同一种问题 解决方案 隔离级别控制的是事务之间允许并发的程度(这样说可能不太准确,请google 一下read uncommit, read commited, repeatable, serialize几种隔离级别以及相应的案例就清楚了

请教异常主动抛出问题

问题描述 请教一个异常抛出的问题假设有方法bufcheck,当导入到方法的buf数组长度不满足bufcheck的长度要求时,bufcheck抛出异常,并且bufcheck返回所需数组的长度.我想主动实现这个方法,但是主动throw一个异常后,eclipse提示后面的return 代码cannot reach.加入if(true)后,不再提示cannot reach,但后面的return应该还是无法reach吧?要是实现抛出异常且return一个值,该怎么写呢?我的分不多,请见谅~if(true)

关于配置Hibernate乐观锁的问题

问题描述 直接上代码:public class DzCyxx extends BaseEntity<dzcyxx> {private static final long serialVersionUID = 1L;@ManyToOne(cascade = { CascadeType.MERGE })@JoinColumn(name = "RSXX_ID")private HrArchive hrArchives;@ManyToOne(cascade = { CascadeT

详解 hibernate 悲观锁 乐观锁 深入分析 代码实例

首先,为什么要有锁这种概念和技术呢? 什么是锁( locking ) 业务逻辑的实现过程中,往往需要保证数据访问的排他性.如在金融系统的日终结算处理中,我们希望针对某个 cut-off 时间点的数据进行处理,而不希望在结算进行过程中(可能是几秒种,也可能是几个小时),数据再发生变化.此时,我们就需要通过一些机制来保证这些数据在某个操作过程中不会被外界修改,这样的机制,在这里,也就是所谓的 "锁" ,即给我们选定的目标数据上锁,使其无法被其他程序修改.Hibernate 支持两种锁机制:

在java中,下面画横线抛出的异常必须一样吗?谢谢!,,,,,

问题描述 在java中,下面画横线抛出的异常必须一样吗?谢谢!,,,,, 解决方案 不需要,throws 后面抛出整个方法中所有可能出现的异常(抛出的是异常类),而throw new Exception抛出特定异常(抛出的是异常对象), 解决方案二: 看情况.完全的解释是,Exception 异常,是所有异常的父类,所有异常都继承于它,所以上面throws 关键字捕获的异常如果写成Exception,那么不管方法里抛出任何种类的异常,都能捕获到,而不需要再捕获特定类型的异常.而如果throws关

抛出的异常:javax.servlet.ServletException: Report Tag:GenerateAndShow:错误!

问题描述 今天安装websphere6.0和普元EOS5.3系统上的增删改查和工作流都是好的,但使用的普元报表开发的界面菜单点击页面上会报500错误.后天报如下错误.[2/27/1511:28:07:610CST]0000003eSystemOutO2015-02-2711:28:07:610[REPORTSERVER]ReportServerstarting...[2/27/1511:28:07:612CST]0000003eServletWrappeESRVE0068E:未捕获到servle