是否可以使用hibernate动态设置表的名称以及带注释的实体类中提到的字段。我发现这就是所谓的命名策略,但我并不了解它。 首先,我想知道动态定义表名称和字段名称的可能解决方案是什么? 其次,有人可以向我解释一下ImprovedNamingStrategy类的主要作用并举出一个使用示例。
答案 0 :(得分:1)
来自" Java Persistence with hibernate" - 您可以扩展ImprovedNamingStrategy
类(实现NamingStrategy
接口并提供默认行为)并覆盖方法
public String tableName(String tableName) {
return "YourTableName";
}
还有其他方法。 希望这会有所帮助!!
答案 1 :(得分:0)
如果你正在使用spring,你可以查看SpringNamingStrategy。它已经扩展了ImprovedNamingStrategy。如果你需要你可以覆盖classToTableName方法。如果你使用的是spring-boot,这个类名可以用属性spring外部化.jpa.hibernate.naming-strategy。 http://docs.spring.io/autorepo/docs/spring-boot/1.1.5.RELEASE/api/org/springframework/boot/orm/jpa/SpringNamingStrategy.html#SpringNamingStrategy()
希望这会有所帮助。