如何配置Hibernate以使用大写和小写字母创建表/列名称

时间:2017-09-05 10:05:38

标签: java postgresql hibernate

我必须在我的Postgres中使用包含大写和小写字母的表名和列名。例如OrgInfo

我想使用 Hibernate 创建此类表和列。如果我使用标准方法:

@Entity 
@Table(name = "OrgInfo")

然后我收到名为" org_info"。

的表格

我如何配置Hibernate来创建具有确切给定名称(包括大写和小写字母)的表和列?

我尝试过使用

@Entity 
@Table(name = "\"OrgInfo\"")

没有效果。

我也使用Spring Boot并试图像这样配置:

  

spring.jpa.hibernate.naming-strategy =   org.hibernate.cfg.DefaultNamingStrategy或   spring.jpa.hibernate.naming-strategy =   org.hibernate.cfg.ImprovedNamingStrategy

3 个答案:

答案 0 :(得分:3)

尝试配置Hibernate"物理策略"在您的配置文件中,如下所示:

  

spring.jpa.hibernate.naming.physical策略= org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

答案 1 :(得分:1)

试试这个:

@Entity @Table(name = "\"OrgInfo\"")

答案 2 :(得分:0)

工作解决方案是使用这两个部分:

@Entity
@Table(name = "\"OrgInfo\"")

  

spring.jpa.hibernate.naming.physical策略= org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl