gpt4 book ai didi

java - Hibernate 中的并发访问

转载 作者:行者123 更新时间:2023-12-01 12:18:43 26 4
gpt4 key购买 nike

我有以下代码来访问数据库

        Session session = sessionFactory.openSession();

String hql ="Select o.id FROM Orders o ORDER BY o.id DESC";
Query query = session.createQuery(hql);
query.setFirstResult(0);
query.setMaxResults(1);

根据提取的数据进行一些计算,并且计算产生的数据应该是唯一的

        session.save(inOrder);
session.flush();

session.clear();
session.close();

但是当我在两个请求同时到来时运行此代码时,它们会获得相同的数据并抛出 ConstraintViolationException。

解决这个问题的最佳方法是什么

最佳答案

您可以使用 setLockMode 锁定正在处理的对象,请参阅 docs

关于java - Hibernate 中的并发访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26837293/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com