承德很好的网络建站,做鲜花配送网站需要准备什么,数据库wordpress搬家,哪里可以学到运营在多表映射配置时#xff0c;我们应该遵循以下不步骤#xff1a;
确定两张表之间的关系在数据库中实现两张表之间的关系建立在实体类中描述出两个实体类之间的关系在映射配置文件中建立两个实体和两张表之间的关系 我们就按照上面的步骤做#xff0c;我这里有一张联系人表和…在多表映射配置时我们应该遵循以下不步骤
确定两张表之间的关系在数据库中实现两张表之间的关系建立在实体类中描述出两个实体类之间的关系在映射配置文件中建立两个实体和两张表之间的关系 我们就按照上面的步骤做我这里有一张联系人表和一张客户表一对多关系实体类代码如下
/*** 客户的实体类* author dengg**/
public class Customer {private Long custId;private String custName;private String custSource;private String custIndustry;private String custLevel;private String custAddress;private String custPhone;public Long getCustId() {return custId;}public void setCustId(Long custId) {this.custId custId;}public String getCustName() {return custName;}public void setCustName(String custName) {this.custName custName;}public String getCustSource() {return custSource;}public void setCustSource(String custSource) {this.custSource custSource;}public String getCustIndustry() {return custIndustry;}public void setCustIndustry(String custIndustry) {this.custIndustry custIndustry;}public String getCustLevel() {return custLevel;}public void setCustLevel(String custLevel) {this.custLevel custLevel;}public String getCustAddress() {return custAddress;}public void setCustAddress(String custAddress) {this.custAddress custAddress;}public String getCustPhone() {return custPhone;}public void setCustPhone(String custPhone) {this.custPhone custPhone;}Overridepublic String toString() {return Customer [custId custId , custName custName , custSource custSource , custIndustry custIndustry , custLevel custLevel , custAddress custAddress , custPhone custPhone ];}public Customer(Long custId, String custName) {super();this.custId custId;this.custName custName;}public Customer() {}}/*** 联系人的实体类* author dengg**/
public class LinkMan implements Serializable {private Long lkmId;private String lkmName;private String lkmPhone;private String lkmMobile;private String lkmEmail;private String lkmPosition;private String lkmMemo;public Long getLkmId() {return lkmId;}public void setLkmId(Long lkmId) {this.lkmId lkmId;}public String getLkmName() {return lkmName;}public void setLkmName(String lkmName) {this.lkmName lkmName;}public String getLkmPhone() {return lkmPhone;}public void setLkmPhone(String lkmPhone) {this.lkmPhone lkmPhone;}public String getLkmMobile() {return lkmMobile;}public void setLkmMobile(String lkmMobile) {this.lkmMobile lkmMobile;}public String getLkmEmail() {return lkmEmail;}public void setLkmEmail(String lkmEmail) {this.lkmEmail lkmEmail;}public String getLkmPosition() {return lkmPosition;}public void setLkmPosition(String lkmPosition) {this.lkmPosition lkmPosition;}public String getLkmMemo() {return lkmMemo;}public void setLkmMemo(String lkmMemo) {this.lkmMemo lkmMemo;}Overridepublic String toString() {return LinkMan [lkmId lkmId , lkmName lkmName , lkmPhone lkmPhone , lkmMobile lkmMobile , lkmEmail lkmEmail , lkmPosition lkmPosition , lkmMemo lkmMemo ];}}第二步在数据库中实现两张表之间的关系建立因为我用了hibernate会自动创建就不弄了 第三步在实体类中描述出两个实体类之间的关系 首先我们在Customer类中配置LinkMan类的关系一个客户对应多个联系人 我们在Customer加入如下代码
private SetLinkMan likmans new HashSetLinkMan(0);public SetLinkMan getLikmans() {return likmans;}public void setLikmans(SetLinkMan likmans) {this.likmans likmans;}主表应该包含从表实体的集合引用用set集合来建立关系再配置set和get方法就行了。 接着配置LinkMan加入代码如下
private Customer customer;public Customer getCustomer() {return customer;}public void setCustomer(Customer customer) {this.customer customer;}第四步在映射配置文件中建立两个实体和两张表之间的关系 我们先打开Customer.hbm.xml文件里面加入配置如下 set namelikmans tablecust_linkmankey columnlkm_cust_id/keyone-to-many classLinkMan//setname就是我们在Customer类中设置set集合的名字 table指定从表的名字也就是联系人表名 key指定外键字段名 one-to-many:指定从表实体名称 然后打开LinkMan.hbm.xml文件在里面加入如下代码
many-to-one namecustomer classCustomer columnlkm_cust_id/many-to-onename:从表实体引用主表实体对象引用的名称吗就是在LinkMan类中设置Customer对象的名称 class指定属性所对应的实体类名称就是Customer路径 column指定外键的名称