如果使用@Entity和@Embeddable注释类,是否应该抛出错误?

时间:2012-01-26 16:21:46

标签: java annotations jpa-2.0

为我的实习工作JPA合规套件......该套件的一部分是测试所有角落案件。

我今天在看@Embeddable。 没有要处理的属性。

然后我开始疑惑......

如果某个班级同时使用@Entity@Embeddable进行注释会怎样?我发现这个相关的问题A class that behaves like @Entity and @Embeddable表明JPA does not allows @Entity and @Embeddable at the same time.但是,他在@ElementCollection的上下文中这样做,这是我猜测是什么导致JPA不喜欢它(不能填充)非基本/可嵌入类型。)

基本上, 根据JPA 2.0, 如果使用@Entity和@Embeddable注释类,是否会抛出错误? 如果没有,会发生什么?

1 个答案:

答案 0 :(得分:3)

来自JSR-317的第323页:

  

要包含在持久性单元中的托管类          扫描注释。它应该注释          使用@ Entity,@ Embeddable或@MappedSuperclass。

这是对持久性单元中托管类定义的引用。基于此,我认为注释具有多个@Entity@Embeddable@MappedSuperclass的课程无效。