休眠列名问题

新手上路,请多包涵
@Column(name="DateOfBirth")
private Date dateOfBirth;

我特别需要上面的代码来创建一个名为“DateOfBirth”的列,而 Hibernate 给我一个名为 date_of_birth 的列。我怎样才能改变这个?有 web.xml 属性吗?我遇到了 DefaultNamingStrategy 和 ImprovedNamingStrategy,但不确定如何指定其中之一。

原文由 lucas 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 278
2 个回答

这是一个可能的解决方法:如果您将其命名为 dateofbirth 数据库中的列将这样命名,但属性名称应该相同。

Hibernate 采用驼峰格式来创建/读取数据库列。

我以前遇到过这个问题。我使用的是旧列,其中列名称“employeename”、“employeerole”、“departmentlocation”中没有空格。我讨厌它,因为我所有的 beans 属性都必须没有驼峰式大小写。

正如您刚才看到的,以“_”分隔的数据库列将正确地用于驼峰式命名法。

原文由 OscarRyz 发布,翻译遵循 CC BY-SA 3.0 许可协议

试试把这个放进去

应用程序.properties

 spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

原文由 Rahul Singh 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题