hibernate annoation (五 组件)
譬喻:有三个类 A B C 最终要耐久化的类是A 而 B C 都作为组件内涵与A B,C都要利用@Embeddable标注声明为一个组件
class A 代码:
Java代码
@Entry
public class A{
private int id
private B b
private C c
...
public B getB(){
...
}
public C getC(){
....
}
}
B 包括C
class B
Java代码
@Embeddable
public class B{
private Stirng bname
private C c
get set....
}
class C
Java代码
@Embeddable
public class C{
private String cnam2
get set....
}
耐久化后 并没有将C的cnam反复耐久化为两个字段假如需要这样则需要:
在A中利用:
@Enumerated
@AttributeOverrides(
{@AttributeOverride(name="bname",column = @Column(name="cname1") )}
)
这样cname将会再次被颜色为一个字段cnam1