У меня есть два класса Team и User:
@Entity
@Table(name = "team")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class Team extends AbstractAuditingEntity implements Serializable, Participant {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sequenceGenerator")
@SequenceGenerator(name = "sequenceGenerator")
private Long id;
И
@Entity
@Table(name = "user")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
@org.springframework.data.elasticsearch.annotations.Document(indexName = "user")
public class User extends AbstractAuditingEntity implements Serializable, Participant {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sequenceGenerator")
@SequenceGenerator(name = "sequenceGenerator")
private Long id;
Я хочу создать новую сущность Match.Матч может иметь 2 участника.Участник может быть командой или пользователем.Я хочу создать абстракцию, чтобы я мог добавить команду или пользователя в качестве участника.Я хотел создать участника интерфейса и сопоставить его с @MappedSuperclass, а затем командой и пользователем для реализации участника, но я получил ошибку:
org.hibernate.AnnotationException: @OneToOne или @ManyToOne в ссылках Match.participantFirstнеизвестное лицо: участник
@MappedSuperclass
public interface Participant {
}