我正在制作一个桌面应用程序w / db(microsoft sql)托管在某个服务器上,而hibernate则在db的顶部。来自多台计算机的多个用户可以操作/访问表中的数据,如果使用@Id
,我想知道当两个或多个不同的PC同时执行session.save(...)
时Hibernate如何处理@GeneratedValue(strategy = GenerationType.AUTO)
。
即
@Entity
@Table
public class User{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
......
}
您可以假设最糟糕的情况,即保存操作需要超过一分钟,并且类中有很多属性。我认为关系型DBMS拥有ACID属性,但我想知道如何?在部署应用程序之前,我需要注意什么?