只是为了它的一脚,我正在使用普通的JDBC编写一些DAO。
目前我有一个将实体数据保存到记录的add方法。现在,我需要考虑记录已经存在的情况。我猜测在现成的ORM中有一个持久的方法:
这通常是怎么做的?
答案 0 :(得分:1)
在像Hibernate这样的典型ORM中,如果您尝试插入与持久性实体具有相同标识符的瞬态实体,则会出现Constraint Violation异常。
我建议您启动一个事务,搜索/查找具有相同标识符的实体。如果存在,请告诉您的应用程序存在问题,可能是自定义异常和回滚。如果不存在,则继续插入实体并提交事务。
这完全取决于构成平等实体的内容,即。 PK,一些独特的领域等。通常,在ORM中,您将能够为实体标识符定义生成策略。