Java 为什么hibernate映射文件的length属性应该是2的幂?

Java 为什么hibernate映射文件的length属性应该是2的幂?,java,hibernate,Java,Hibernate,我在某个地方读到,hibernate映射文件的length属性应该是2的幂,也就是说,它应该是2、4、8、16、32。。。等等对吗?如果是这样:这是为了什么?hibernate中属性的长度将映射到数据库字段的长度。你真的应该用二的幂吗 首先是您的应用程序需求。如果你有员工号码 对于15个字符,不要将字段16设为2的幂 如果你需要选择一个长度限制,它可以节省一些时间 硬盘取决于数据库和字段类型。 现在保存磁盘真的很重要吗 我无法知晓这么多数据库、版本、引擎或配置的所有性能细节。可能是Varchar

我在某个地方读到,hibernate映射文件的length属性应该是2的幂,也就是说,它应该是2、4、8、16、32。。。等等对吗?如果是这样:这是为了什么?

hibernate中属性的长度将映射到数据库字段的长度。你真的应该用二的幂吗

  • 首先是您的应用程序需求。如果你有员工号码 对于15个字符,不要将字段16设为2的幂

  • 如果你需要选择一个长度限制,它可以节省一些时间 硬盘取决于数据库和字段类型。 现在保存磁盘真的很重要吗

  • 我无法知晓这么多数据库、版本、引擎或配置的所有性能细节。可能是Varchar(255)在DummySQL 4.3.1中很快,Varchar(256)作为clob实现。但是culd比版本4.4中的版本更适合,他们修正了这个限制。这就是为什么大型组织有一个数据库管理员


  • 除此之外,我不知道有任何特定于Hibernate的限制或原因建议使用2的幂。只是不要忘记添加长度

    定义“hibernate映射文件的长度属性”的含义。我相信他指的是这个属性。在不太好的旧时代,它是用xml设置的,但多亏了$Dedity&&CODERS,现在我们可以通过注释来设置它。