Jpa 实体生成器将整数类型分配给我的实体的 id 字段。我的数据库中相应的属性/列是串行类型(是的 postgres
)。我还将整数类型分配给我的实体 id 字段。但是我在 this page 上看到了 Long getId()
的用法。 .我还在 geomajas 示例中看到了这种类型的类型分配。使用 Integer
时有什么陷阱吗?我的意思是,是的,您必须小心 ID 不低于 0 的整数,但同时您还必须确保您的 Long Id 不大于 2,147,483,647。那么这里有什么交易?
编辑:我混淆了 Long
和无符号整数,所以我想我在想什么是“java 实体的 id 字段的无符号整数与 Integer
”现在我对长整数和无符号整数的混淆已经消失了,这是胡说八道。我的错。感谢您的回答和评论。我想如果我会使用 bigserial jpa 实体生成器也会使用 Long。
最佳答案
Long
的容量比 Integer
数据类型大得多,所以如果您不确定数据的长度,最好使用 Long
类型数据...
另一方面,由于 Long
具有更大的容量,它会使用额外的空间,如果您确定您的数据不会大于 Integer
数据类型,那么使用 Long
只会让你的代码效率低下
关于java - Java 实体的 id 字段的 Long 与 Integer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17398192/