java - 修改hibernate中的映射表名称

标签 java hibernate

这是我的类(class):

@Entity (name = "Client")
public abstract class MyClient
{
    private Map<String, String> _properties;
}

Hiberate 将我的属性对象映射到名为“MyClient_properties”的类中。
如何修改它以便将其映射到“Client_properties”?
谢谢

最佳答案

有趣的是,我认为这应该是默认值。很确定默认命名功能应该采用 @Entity#name 值而不是类名(如果提供)。

无论如何,要显式命名集合表,您可以使用(奇怪的是)JPA @CollectionTable 注释:

@CollectionTable( name="Client_properties" )
private Map<String, String> _properties;

关于java - 修改hibernate中的映射表名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17212801/

相关文章:

java - 当具体 JPA 实体类与其通用父类(super class)位于不同的包中时,加载应用程序时出现问题

java - 使用 hibernate 删除对象后刷新 Jtable?

hibernate - 在 Grails 中使用 Firebird 数据库的步骤

java - JPA Criteria 查询计数结果涉及连接

Java 通用比较器

java - 如果找到字符,则忽略字符后的字符串

JavaFX TreeView 的多种对象类型? (和更多)

java - 查找两个时间戳之间的时间间隔

java - hibernate 映射 : one column to multiple tables

java - HQL 不返回结果,但生成的 SQL 在 SQL Developer 上完美运行