java – 为什么Hibernate认为@GeneratedValue从根本上是错误的?

我刚刚阅读了Hibernate文档,并在此页面上发现了警告

http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html_single/#d0e1150

“警告
Hibernate团队一直认为这样的结构是根本错误的.在使用此功能之前,请尽量修复数据模型.“关于部分标识符生成

有人可以更详细地向我解释一下这实际上有什么问题吗?为什么Hibernate会忽视生成的值?这是否包括Hibernate中的自动递增值?

谢谢,

最佳答案 警告不是关于在只有一个id字段的类上使用@GeneratedValue.

警告是关于在复合键的一列中使用@GeneratedValue,这是一个非常奇怪的用例(在12年内从未见过需要这样的东西).

因此警告是:如果您需要在复合键中使用@GeneratedValue,那么请检查您的模型,因为它很可能会出现问题.

如果您认为这不能解答您的问题,您能举例说明您可能需要此功能吗?

点赞