当前位置: 首页 > 面试题库 >

我如何休眠以生成Oracle的FOR UPDATE WAIT 10语法

沈单弓
2023-03-14
问题内容

我有一行这样的代码:

final Foo foo = (Foo)session.get( Foo.class, id, LockMode.UPGRADE );

这会产生一个SELECT .. FOR UPDATE

但是,我只愿意等待10秒钟来获得锁,并且在那里我想要一个SELECT .. FOR UPDATE WAIT 10。我怎样才能进入hibernate状态呢?


问题答案:

答案是将LockOptions类与SetTimeout()LockMode
一起使用。

为此,我们升级到Hibernate 3.6只是发现它对于Oracle来说是坏的。



 类似资料:
  • 问题内容: 任何人都知道一些有关如何为hibernate创建自定义ID生成器的好教程吗? 问题答案: 在Google上粗略搜索“hibernate自定义ID生成器教程”,发现了以下可能性。我排除了那些看起来没有用的内容,并总结了它们的内容。 http://www.devx.com/Java/Article/30396-涵盖了在数据保留之前生成ID(因此还没有业务密钥)的问题。 http://doc

  • 问题内容: 嗨,我编写了这样的代码 但是我从DAO手动设置了它,例如“ e.setUserID(01);”。否则将不插入行是否有任何过程来获取ID值并检索自动生成的值。我想我会得到一些帮助 问题答案: 采用

  • 问题内容: 这将创建以下架构: 观察:当我将序列设置为1时,第一个自动生成的是。当我将值设置为时,第一个ID为。 于是,不知何故该序列的当前valuze总是得到 成倍 的。为什么?如何防止这种情况,而只使用序列中的nexval? 问题答案: 此行为来自其参数的默认值50 。您可以根据需要进行更改: 这是出于性能原因。它允许Hibernate预订ID块,并防止每次需要新ID时都询问数据库。

  • 问题内容: hibernate如何生成外键约束名称? 如果我没有定义名称,hibernate将生成类似这样的内容 这个名字是怎么产生的?也许来自字段名称的哈希值或类似的东西?我需要知道所有实例上的名称是否相等。 问题答案: Hibernate通过串联表和属性名称来生成约束名称,并将结果转换为。由于某些数据库中的约束名称长度限制,因此需要它。例如,在Oracle数据库中,外键名称的长度不能超过30个

  • 问题内容: 我在Oracle数据库中有旧表,我想使用Hibernate从Java应用程序访问它。问题是:表没有好的主键。例如,一个表如下所示: 最初的设计师决定使用该列作为状态字段,认为数据库永远不需要区分公司外部的John Smiths,而是可以通过他们的hired_at日期来识别具有相同名称的员工。显然,这将创建一个部分可为空且可修改的主键。由于数据库不允许将此作为​​主键,因此他使用了唯一索

  • 问题内容: 我的数据库是Oracle,我的id列值是Oracle序列,此序列由触发器执行,因此,在插入每一行之前,此触发器使用此序列来获取id值。因此,我对应该在实体类中定义哪个id策略生成感到困惑。 要么 要么 真的很困惑,有人可以阐明这个话题吗?请清楚解释。 问题答案: 我还有一个projet,其中有一个Oracle DB将数据提供给我的@Entity类。如您所说,序列通过触发器生成表PK的I