首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

投射复合类型的属性

2012-08-24 
映射复合类型的属性有时候 实体属性的类型不是基本数据类型,也不是string ,java,util,Date等简单类型,而是

映射复合类型的属性

有时候 实体属性的类型不是基本数据类型,也不是string ,java,util,Date等简单类型,而是用户定义的复合类型

?

当实体内包含复合类型的属性时,我们用 ?@Embedded 修饰这个复合类型的属性 用 @AttributeOverride来指定

复合类型中成员属性的映射配置

?如,一个复合类型是cat ,cat 包含name 属性 需要使用@AttributeOverride 指定cat的name属性的映射配置

?

name ? 指定符合类型中的哪个属性进行配置

column ?指定关于该属性的详细映射信息

?

@Column(name="email")

private String emal; ? ? //以上都一样

?

?

@Embedded

@AttributeOverrides({

@AttributeOverride(name="name",

column=@Column(name="cat_name",length=30)),

@AttributeOverride(name="color",

column=@Column(name="cat_color"))

})

private Cat cat; ?//后面一样有 set ,get 方法

?

?

除此以外,我们要用 ?@Embeddable 来修饰Cat 类 ,不使用也没问题

?

?

@Embeddable ? ? ??

public class Cat{

private String name;

private String color;

public cat(){}

public cat(String name,String color){

this.name=name;

this.color=color;

?

///省略get set ,方法

?

?

}

?

}

?

?

?

热点排行