管理交易,春季启动

时间:2017-01-14 17:03:45

标签: spring spring-boot transactions

在我的春季启动应用程序中,我希望避免每个日期预订多个约会,但是当同时完成两个预约日期x的请求时,我将两个约会保存在数据库中且日期相同x 。 如何解决这个问题,请帮忙吗?

1 个答案:

答案 0 :(得分:1)

  1. 如果可能,请不要插入第二个预订(例如,在插入或锁定预订之前检查查询是否悲观)。这应该是最好的方法 - 有几种方法可以防止并发预订。您还可以在stackoverflow上找到很多讨论。

  2. 如果在您的使用案例中无法做到这一点:使用数据库约束(如果您的数据库中已有预订和日期,则会抛出异常,您可以在我们的应用程序中处理错误)https://stackoverflow.com/a/2570810/5978781