@SecondaryTable,@SecondaryTables允许你把一个entity映射到多表上,有点类似于主从表的概念,其实也是一对一或者一对多关系映射的简化版.举个简单例子,如Customer有属性street,city,state.这三个属性构成了顾客的地址,我们希望把此3个属性映射到另一张表上,作为主表的从表,此表跟主表就是一对一关系,通过address_id进行主键关联.那么,我们的Customer来应该像这样:
@Entity
@Table(name = "CUSTOMER")
@SecondaryTable(name = "EMBEDDED_ADDRESS",pkJoinColumns={@PrimaryKeyJoinColumn(name = "ADDRESS_ID")})
public class Customer implements java.io.Serializable
{
private int id;
private String first;
private String last;
private String street;
private String city;
private String state;
private String zip;
........
........
@SecondaryTable的name指定表名,pkJoinColumns指定从表关联的主键,还没完,必须给street,city,state指定表名:
@Column(name = "STREET", table = "EMBEDDED_ADDRESS")
public String getStreet()
{
return street;
}
public void setStreet(String street)
{
this.street = street;
}
@Column(name = "CITY", table = "EMBEDDED_ADDRESS")
public String getCity()
{
return city;
}
public void setCity(String city)
{
this.city = city;
}
@Column(name = "STATE", table = "EMBEDDED_ADDRESS")
public String getState()
{
return state;
}
public void setState(String state)
{
this.state = state;
}
@Column(name = "ZIP", table = "EMBEDDED_ADDRESS")
public String getZip()
{
return zip;
}
public void setZip(String zip)
{
this.zip = zip;
}
不错吧,是个很不错的功能,ejb3的大规模应用值的期待.
![]() |
谢亚龙逼女足姑娘作检讨(图)
“安静”为啥成裁判口头语?
姚明私下发给刘翔的短信
|
![]() |
曝光:姚明小时候与可爱女生合影(图) 组图:隋菲菲私家相册 率性美感领衔女篮 |
![]() |
![]() |
![]() |


档案
日志
相册
视频








评论
想第一时间抢沙发么?