是否有可能绕过@GeneratedValueHibernate中的ID,在大多数情况下,我们希望使用来设置ID GeneratedValue,但在某些情况下希望手动设置ID。
@GeneratedValue
GeneratedValue
这可能吗?
我知道您可以在JPA规范中执行此操作,因此您应该能够在Hibernate中(使用JPA +批注)。
如果仅填写要创建的新持久性模型的ID字段,那么当您将该模型“合并”到EntityManager中时,它将使用您设置的ID。
但是,这确实有后果。您刚刚用完了该ID,但是GeneratedValue批注指定的序列不知道这一点。除非您指定一个比当前序列值少的未使用的ID,否则一旦序列追上您刚刚使用的值,您将遇到问题。
因此,也许我可以看到您可能希望用户在哪里指定ID,但是您需要捕获将来可能出现的异常(重复ID)。