打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Hibernate4组件映射
Java代码
 
  1. public class Customer  {   
  2.   
  3.     private Integer id;   
  4.     private String name;   
  5.   
  6.     private Address homeAddress;  //家庭地址   
  7.     private Address comAddress;   //公司地址   
  8.   
  9.     // getter and setter   
  10. }  

 

Java代码
 
  1. public class Address  {   
  2.   
  3.     private String province;   
  4.     private String city;   
  5.     private String street;   
  6.     private String zipcode;   
  7.        //private Customer customer;   
  8.   
  9.     // getter and setter   
  10. }  

 

Xml代码
 
  1. <hibernate-mapping package="mypack">  
  2.     <class name="Customer" table="tbl_customer">  
  3.         <id name="id">  
  4.             <generator class="increment" />  
  5.         </id>  
  6.         <property name="name" />  
  7.         <component name="homeAddress" class="Address">  
  8.             <!-- <parent name="customer" /> -->  
  9.             <property name="province" column="home_province" />  
  10.             <property name="city" column="home_city" />  
  11.             <property name="street" column="home_street" />  
  12.             <property name="zipcode" column="home_zipcode" />  
  13.         </component>  
  14.         <component name="comAddress" class="Address">  
  15.             <!-- <parent name="customer" /> -->  
  16.             <property name="province" column="com_province" />  
  17.             <property name="city" column="com_city" />  
  18.             <property name="street" column="com_street" />  
  19.             <property name="zipcode" column="com_zipcode" />  
  20.         </component>  
  21.     </class>  
  22. </hibernate-mapping>  

 

Java代码
 
  1. @Entity  
  2. @Table(name = "tbl_customer")   
  3. public class Customer {   
  4.   
  5.     @Id  
  6.     @GenericGenerator(name = "myIncrement", strategy = "increment")   
  7.     @GeneratedValue(generator = "myIncrement")   
  8.     private Integer id;   
  9.   
  10.     @Column(name = "name")   
  11.     private String name;   
  12.   
  13.     @Embedded  
  14.     @AttributeOverrides({ @AttributeOverride(name = "province", column = @Column(name = "home_province")),   
  15.             @AttributeOverride(name = "city", column = @Column(name = "home_city")),   
  16.             @AttributeOverride(name = "street", column = @Column(name = "home_street")),   
  17.             @AttributeOverride(name = "zipcode", column = @Column(name = "home_zipcode")) })   
  18.     private Address homeAddress;   
  19.   
  20.     @Embedded  
  21.     @AttributeOverrides({ @AttributeOverride(name = "province", column = @Column(name = "com_province")),   
  22.             @AttributeOverride(name = "city", column = @Column(name = "com_city")),   
  23.             @AttributeOverride(name = "street", column = @Column(name = "com_street")),   
  24.             @AttributeOverride(name = "zipcode", column = @Column(name = "com_zipcode")) })   
  25.     private Address comAddress;   
  26.   
  27.     // getter and setter   
  28. }  

 

Java代码
 
  1. @Embeddable  
  2. public class Address implements Serializable {   
  3.   
  4.     private String province;   
  5.     private String city;   
  6.     private String street;   
  7.     private String zipcode;   
  8.   
  9.     //@Transient   
  10.     //private Customer customer;   
  11.   
  12.     // getter and setter   
  13. }  

 

Java代码
 
  1. Customer customer = new Customer();   
  2.             Address homeAddress = new Address("province1""city1""street1""100001");   
  3.             Address comAddress = new Address("province2""city2""street2""200002");   
  4.             customer.setName("Tom");   
  5.             customer.setHomeAddress(homeAddress);   
  6.             customer.setComAddress(comAddress);   
  7.   
  8.             session.save(customer);  

 

Sql代码
 
  1. Hibernate:    
  2.     create table tbl_customer (   
  3.         id integer not null,   
  4.         name varchar(255),   
  5.         home_province varchar(255),   
  6.         home_city varchar(255),   
  7.         home_street varchar(255),   
  8.         home_zipcode varchar(255),   
  9.         com_province varchar(255),   
  10.         com_city varchar(255),   
  11.         com_street varchar(255),   
  12.         com_zipcode varchar(255),   
  13.         primary key (id)   
  14.     ) 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
JPA的Embeddable Objects - LalfaShi‘Blog
Hibernate 组合映射使用
C#引用类型详细剖析
关于第5章的全部习题答案总结!!! - 《JAVA开发实战经典》答疑专区 - 魔乐MLDN java学习社区-魔乐科技 JAVA论坛|JAVA培训论坛|MLDN论坛|MLDN社区|MLDN视频下载 -JAVA学习论坛
精通Hibernate
映射Hibernate对象标识符
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服