我有不同的实体类型(例如产品,类别),都使用UUID键入。我想用多种语言存储他们的名字。以下SQL表结构对我来说最直接:
产品(ID)
类别(ID)
I18n(entity_id,lan,name)
如何使用JPA实现此类结构?
@Entity
class I18n {
private UUID entity_id;
@Column(length = 2)
private String lan;
private String name;
}
@Entity
class Product {
@Id
@GeneratedValue
private UUID id;
// TODO names from I18n
}
@Entity
class Category {
@Id
@GeneratedValue
private UUID id;
// TODO names from I18n
}
我能想到的所有解决方案都会为每个实体的i18n数据生成不同的表格(@ElementCollection,@ Embeddable)。
扩大我的问题:使用JPA(或一般SQL)存储多语言数据的推荐方法是什么