1

我正在尝试使用 hibernate 进行本地化,并且由于我坚持使用 @ElementCollection(请参阅嵌入式地图上的 HQL 选择),我想尝试使用真实实体的不同方法:

@Entity
public class Category {
  ..
  @OneToMany(fetch = FetchType.EAGER) 
  @Cascade(...) 
  List<Localization> name;
}

@Entity
public class Localization {
  @Id
  @GeneratedValue
  private long id;
  @NotNull
  public String locale;
  @NotNull
  public String label;
}

现在我知道这不是很好,因为实际上它允许一个类别有多个英文翻译,但这对我来说很好。

我的问题:
由于我将在我的数据库中使用这种可本地化的结构,并且会有很多本地化日期,本地化表会变得非常大。由于我想急切地获取本地化关系,这可能会成为性能问题。

是否可以为每个 ManyToOne 映射创建一个单独的表(所以基本上是 @ElementCollection 隐式完成的,我不能使用,请参见上面的链接)。所以结果应该是许多具有相同结构的表,例如:

locale_category_name (id : long, locale : string, label : string)
locale_category_description (id : long, locale : string, label : string)
locale_product_name (id : long, locale : string, label : string)

等等

4

0 回答 0