?
一對(duì)一的關(guān)系 如(CrmCustomer 和CrmReasearch,CrmIntendInfo是一對(duì)一的關(guān)系
??????????????????????? 分別是客戶(hù),客戶(hù)調(diào)查和客戶(hù)意向調(diào)查










































在CrmResearch 和CrmIntendInfo 進(jìn)行相應(yīng)的設(shè)置













另外一種一對(duì)一關(guān)系的類(lèi)型,不是通過(guò)相同的鍵來(lái)連接 ,而是通過(guò)直接設(shè)置一對(duì)一關(guān)系來(lái)連接?
public???class??CrmCommInfoType??implements??java.io.Serializable?{?
???????//?一對(duì)一關(guān)系?
????? ?private long commTypeId;
?????private??CrmCommonInfo?crmCommonInfo;
???????@OneToOne(cascade??=??{},?fetch??=??FetchType.LAZY,?mappedBy??=???"?crmCommInfoType?"?,optional?=?true?)
??????//?mappedBy=crmCommInfoType,是和這個(gè)表一對(duì)一的CrmCommInfo?里面的關(guān)聯(lián)字段?
?????public??CrmCommonInfo?getCrmCommonInfo()?{
?????????return???this?.crmCommonInfo;
????}
??????
???}????
???????//?一對(duì)一關(guān)系?
????? ?private long commTypeId;
?????private??CrmCommonInfo?crmCommonInfo;
???????@OneToOne(cascade??=??{},?fetch??=??FetchType.LAZY,?mappedBy??=???"?crmCommInfoType?"?,optional?=?true?)
??????//?mappedBy=crmCommInfoType,是和這個(gè)表一對(duì)一的CrmCommInfo?里面的關(guān)聯(lián)字段?
?????public??CrmCommonInfo?getCrmCommonInfo()?{
?????????return???this?.crmCommonInfo;
????}
??????
???}????
public?class?CrmCommonInfo?implements?java.io.Serializable?{
???????private?long?crmCommonInfoId;
???????private?CrmCommInfoType?crmCommInfoType;//mappedby 的crmCommInfoType
???????????
????@OneToOne(cascade?=?{},?fetch?=?FetchType.LAZY)
????@JoinColumn(name?=?"COMM_TYPE_ID",referencedColumnName?=?"COMM_TYPE_ID",unique?=?true)//要連接的欄的名字,數(shù)據(jù)庫(kù)里面的字段 ?
????public?CrmCommInfoType?getCrmCommInfoType()?{
????????return?this.crmCommInfoType;
????}
????public?void?setCrmCommInfoType(CrmCommInfoType?crmCommInfoType)?{
????????this.crmCommInfoType?=?crmCommInfoType;
????}
?}
???????private?long?crmCommonInfoId;
???????private?CrmCommInfoType?crmCommInfoType;//mappedby 的crmCommInfoType
???????????
????@OneToOne(cascade?=?{},?fetch?=?FetchType.LAZY)
????@JoinColumn(name?=?"COMM_TYPE_ID",referencedColumnName?=?"COMM_TYPE_ID",unique?=?true)//要連接的欄的名字,數(shù)據(jù)庫(kù)里面的字段 ?
????public?CrmCommInfoType?getCrmCommInfoType()?{
????????return?this.crmCommInfoType;
????}
????public?void?setCrmCommInfoType(CrmCommInfoType?crmCommInfoType)?{
????????this.crmCommInfoType?=?crmCommInfoType;
????}
?}
還要在數(shù)據(jù)庫(kù)里面設(shè)置外間約束(如在MySql 下面要設(shè)置的Sql如下)
ALTER?TABLE?CRM_COMMON_INFO?CONSTRAINT?FKF8882C3D003D0B1?FOREIGH?KEY(COMM_TYPE_ID)?REFERENCES?CRM_COMM_INFO_TYPE(COMM_TYPE_ID)