如何使用Hibernate保存Class类型的属性?

时间:2012-12-04 09:40:41

标签: java hibernate

更具体地说,如何使用Hibernate保存类型类列表?

我有以下(简单)类:

@Entity
@Table(name = "bundles")
public class Bundle{

    @Id
    private Long id;

    private List<Class<?>> classes;

    // Getters & Setters and some logic
}

现在,我该如何在数据库中保存?我需要一个数据库模式,它提供了一个保存“类”类型的选项,但我无法弄明白。我使用PostgreSQL作为数据库。

它是List的事实并不重要,我只想用@OneToMany注释它。

1 个答案:

答案 0 :(得分:2)

根据documentationClass<?>由hibernate正确处理:

  

6.1.1.20。 java.lang.Class中

     

org.hibernate.type.ClassType   将java.lang.Class映射到JDBC VARCHAR(使用类名称)

     

在类和注册表中的class和java.lang.Class下注册(参见第6.5节“类型注册表”)。

数据库“列”必须为VARCHAR