У меня проблемы с преодолением ассоциации. Чтение Javadoc http://download.oracle.com/javaee/6/api/javax/persistence/CollectionTable.html вы можете прочитать "Смотрите также:
ElementCollection, AttributeOverride, AssociationOverride, Column ", который дает нам предположение, что вы можете использовать его ... но я не знаю, как это не работает
@MappedSuperclass
public class AbstractUser {
[...]
public String getLastname() { ...}
@ElementCollection
@CollectionTable(joinColumns=@JoinColumn(name="user_id"))
@Column(name="nickname")
public Set<String> getNicknames() { ... }
реализует
@Entity
@Table(name="users")
@Table(name="user_rfcs")
@AssociationOverride(name = "nicknames",
joinTable = @JoinTable(name = "user_nicknames", joinColumns = @JoinColumn(name = "user_id"))
)
public class User extends AbstractUser {
[...]
}
@Entity
@Table(name="user_rfcs")
@AssociationOverride(name = "nicknames",
joinTable = @JoinTable(name = "user_rfc_nicknames", joinColumns = @JoinColumn(name = "user_id"))
)
public class UserRFC extends AbstractUser {
[...]
}