我想设计一个具有String []属性的实体类。这个String Array总是有两个值,我不希望Hibernate(或JPA)为此创建一个额外的表,而是直接将这两个String值嵌入到表中。这有可能吗?
如果总是存在两个值,则可以使用getter / setter和instance变量。您确实可以选择使用映射实例变量还是属性@Column。
@Column
@Column String s1; @Column String s2; public String[] getProp() { return new String[]{ s1, s2 }; } public String setProp(String[] s ) { s1 = s[0]; s2 = s[1]; }
否则请看@Embedded实体。精神上的东西
@Embedded
@Entity public class MyEntity { @Embedded public StringTuple tuple; } public class StringTuple { public String s1; public String s2; }