0

我有一个测试用例,它有三个表/类(Language、Caption 和 CaptionLanguage)。

语言表存储语言数据。
Caption 表存储字幕索引数据。
CaptionLanguage 表存储每种语言的字幕数据。

MER

我可以使用哪种继承类型来解决问题?


如果我使用“@Inheritance(strategy=InheritanceType.JOINED)”设置“@DiscriminatorColumn(name="ID_LANG",discriminatorType=DiscriminatorType.Integer) ”,会起作用吗?
不使用 @DiscriminatorValue(value="Value")

谢谢!

4

1 回答 1

1

这看起来不像可以通过继承解决的问题。尽管有名称,但CaptionLanguage不是的子类型Language- 它也不是 的子类型Caption

相反,它看起来像三个具有以下特征的实体:

  • 一对多从LanguageCaptionLanguage(和/或多对一逆)
  • 一对多从CaptionCaptionLanguage(和/或可能是多对一逆)
  • 多对一从CaptionCaption(和/或一对多逆)
  • CaptionLanguage确实有复合主键,所以应该 使用@IdClass或 @EmbeddedId 。
于 2013-02-18T19:40:58.253 回答