我正在使用@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/

10-12 19:05