如何避免在插入表时出现数据不一致

时间:2019-09-08 10:02:50

标签: java wildfly

A是一张桌子
a1是A中的入门密钥
a2是A中的另一个字段

我创建了一个基于Java Web的应用程序并将其部署在wildfly服务器中。字段a1是最终用户的只读字段 它将显示表A中的最大行数,而a2是可编辑字段。现在考虑两个最终用户正在访问 此应用程序同时尝试将数据插入表A。这两个用户都将在字段a1中看到相同的值 并在字段a2中提供不同的值。现在,两个用户都提交了申请,并将数据插入A。 结果将为字段a1插入具有相同值的两行。但是字段a1是主键。因此,它应该具有独特的价值。

在表A中插入数据时如何防止这种情况?在这里我们需要应用线程概念吗?

1 个答案:

答案 0 :(得分:1)

使用ID生成器。可能有不同的类型,例如基于Oracle中的数据库序列,基于MySQL中的自动增量。

以下是一些很好的例子: