我正在使用Hibernate和Spring,并且我想编写服务代码以满足在两个单独的线程中使用DAO
来获取实体实例通过id,并且它在每种情况下都是相同的id /数据库行,并且我不希望给定的方法在该实体实例的两个线程中同时运行。如何编写在实体实例上同步的Java代码
我不知道是否有可能写...
synchronized(entity) {}
或者这是否是不可能的,因为从DAO
检索时,每个线程可以创建在内存中的对象的不同实例,都指的是同一个实体实例。
如果Hibernate确实可以在内存中为同一个实体实例创建多个对象,那么执行我想要做的事情的最佳方法是什么?
private static Object sharedLock = new Object();你可以使用共享锁吗? –