你做错了一切。默认情况下,Spring Bean是单例的,并且您的实体不是线程安全的,也不是。
实体应该是绑定到持久上下文的局部变量。不能在多线程环境中访问它们。
并发控制由数据库处理,您的应用程序逻辑应主要关注通过应用程序级可重复读取防止更新丢失。
您的DAO和服务应该是Spring单例组件。您的实体和请求绑定的DTO决不能为单例。这些对象是短暂的,范围仅限于生成它们的请求。
查看Spring Data JPA文档以获取可靠的数据访问层设计。

你做错了一切。默认情况下,Spring Bean是单例的,并且您的实体不是线程安全的,也不是。
实体应该是绑定到持久上下文的局部变量。不能在多线程环境中访问它们。
并发控制由数据库处理,您的应用程序逻辑应主要关注通过应用程序级可重复读取防止更新丢失。
您的DAO和服务应该是Spring单例组件。您的实体和请求绑定的DTO决不能为单例。这些对象是短暂的,范围仅限于生成它们的请求。
查看Spring Data JPA文档以获取可靠的数据访问层设计。