我正在使用@ElementCollection作为自定义对象列表
@ElementCollection
@CollectionTable(name = "choice", joinColumns = @JoinColumn(name = "itemId"))
@OrderColumn(name = "index")
private List<Choice> choices = new ArrayList<Choice>();
我已经创建了这样的选择类
//@Embeddable
@Table(name = "choice")
@Cacheable(false)
@Audited
public class Choice implements Serializable{
如果我使用@Embeddable注解,我会得到
org.hibernate.MappingException: Type not supported for auditing: org.hibernate.type.ComponentType
我是JPA的新手。有什么我想念的吗?
最佳答案
如果要使用@Embeddable
,则引用@Embeddable
类的字段需要具有@Embedded
批注。然后,@Embedded
类中的字段需要具有正确的JPA批注,以便JPA知道如何处理它们。您可能需要阅读this,以便完全了解@Embbedable
的功能。
关于hibernate - JPA @Embeddable,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8951111/