根据休眠文档:
我们建议您在持久类上声明一致命名的标识符属性,并使用可空(即非原始)类型。
当 GenerationType 设置为 AUTO 且标识符属性为 long(原始)类型时,可能会出现哪些问题?
使用一个Long
对象,即java.lang.Long
我认为 hibernate 可能对原始类型有问题,因为有时它可能会尝试将其设置为null
.
When using Hibernate's 'query-by-example' capabilities a null
value for the id may be desirable, for example when trying to find a set of objects with different id values. In this case, long id
, defaulting to 0
, may not be the same as Long id
with a value of null
- maybe the value 0
is a valid id in the database?