Hibernate:使用原始long来表示标识符属性

时间:2012-12-18 11:58:48

标签: java hibernate

根据Hibernate文档:

  

我们建议您在持久化类上声明一致命名的标识符属性,并使用可空(即非原始)类型。

当GenerationType设置为AUTO且标识符属性为long(primitive)类型时,可能会出现哪些问题?

2 个答案:

答案 0 :(得分:2)

使用Long对象,即java.lang.Long

我认为hibernate可能会遇到基本类型的问题,因为有时会尝试将其设置为null

答案 1 :(得分:0)

当使用Hibernate的“按示例查询”功能时,可能需要null id的值,例如在尝试查找具有不同id值的对象的 set 时。在这种情况下,默认为long id的{​​{1}}可能与值0的{​​{1}}不同 - 可能值Long id有效数据库中的id?