Hibernate4组件映射
生活随笔
收集整理的這篇文章主要介紹了
Hibernate4组件映射
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java代碼 ? public?class?Customer??{?? ?? ????private?Integer?id;?? ????private?String?name;?? ?? ????private?Address?homeAddress;??//家庭地址?? ????private?Address?comAddress;???//公司地址?? ?? ????//?getter?and?setter?? }??
public?class?Address??{?? ?? ????private?String?province;?? ????private?String?city;?? ????private?String?street;?? ????private?String?zipcode;?? ???????//private?Customer?customer;?? ?? ????//?getter?and?setter?? }??
<hibernate-mapping?package="mypack">?? ????<class?name="Customer"?table="tbl_customer">?? ????????<id?name="id">?? ????????????<generator?class="increment"?/>?? ????????</id>?? ????????<property?name="name"?/>?? ????????<component?name="homeAddress"?class="Address">?? ????????????<!--?<parent?name="customer"?/>?-->?? ????????????<property?name="province"?column="home_province"?/>?? ????????????<property?name="city"?column="home_city"?/>?? ????????????<property?name="street"?column="home_street"?/>?? ????????????<property?name="zipcode"?column="home_zipcode"?/>?? ????????</component>?? ????????<component?name="comAddress"?class="Address">?? ????????????<!--?<parent?name="customer"?/>?-->?? ????????????<property?name="province"?column="com_province"?/>?? ????????????<property?name="city"?column="com_city"?/>?? ????????????<property?name="street"?column="com_street"?/>?? ????????????<property?name="zipcode"?column="com_zipcode"?/>?? ????????</component>?? ????</class>?? </hibernate-mapping>??
@Entity?? @Table(name?=?"tbl_customer")?? public?class?Customer?{?? ?? ????@Id?? ????@GenericGenerator(name?=?"myIncrement",?strategy?=?"increment")?? ????@GeneratedValue(generator?=?"myIncrement")?? ????private?Integer?id;?? ?? ????@Column(name?=?"name")?? ????private?String?name;?? ?? ????@Embedded?? ????@AttributeOverrides({?@AttributeOverride(name?=?"province",?column?=?@Column(name?=?"home_province")),?? ????????????@AttributeOverride(name?=?"city",?column?=?@Column(name?=?"home_city")),?? ????????????@AttributeOverride(name?=?"street",?column?=?@Column(name?=?"home_street")),?? ????????????@AttributeOverride(name?=?"zipcode",?column?=?@Column(name?=?"home_zipcode"))?})?? ????private?Address?homeAddress;?? ?? ????@Embedded?? ????@AttributeOverrides({?@AttributeOverride(name?=?"province",?column?=?@Column(name?=?"com_province")),?? ????????????@AttributeOverride(name?=?"city",?column?=?@Column(name?=?"com_city")),?? ????????????@AttributeOverride(name?=?"street",?column?=?@Column(name?=?"com_street")),?? ????????????@AttributeOverride(name?=?"zipcode",?column?=?@Column(name?=?"com_zipcode"))?})?? ????private?Address?comAddress;?? ?? ????//?getter?and?setter?? }??
@Embeddable?? public?class?Address?implements?Serializable?{?? ?? ????private?String?province;?? ????private?String?city;?? ????private?String?street;?? ????private?String?zipcode;?? ?? ????//@Transient?? ????//private?Customer?customer;?? ?? ????//?getter?and?setter?? }??
Customer?customer?=?new?Customer();?? ????????????Address?homeAddress?=?new?Address("province1",?"city1",?"street1",?"100001");?? ????????????Address?comAddress?=?new?Address("province2",?"city2",?"street2",?"200002");?? ????????????customer.setName("Tom");?? ????????????customer.setHomeAddress(homeAddress);?? ????????????customer.setComAddress(comAddress);?? ?? ????????????session.save(customer);??
Hibernate:??? ????create?table?tbl_customer?(?? ????????id?integer?not?null,?? ????????name?varchar(255),?? ????????home_province?varchar(255),?? ????????home_city?varchar(255),?? ????????home_street?varchar(255),?? ????????home_zipcode?varchar(255),?? ????????com_province?varchar(255),?? ????????com_city?varchar(255),?? ????????com_street?varchar(255),?? ????????com_zipcode?varchar(255),?? ????????primary?key?(id)?? ????)?
?
Java代碼 ??
Xml代碼 ??
Java代碼 ??
Java代碼 ??
Java代碼 ??
Sql代碼 ?總結
以上是生活随笔為你收集整理的Hibernate4组件映射的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hibernate4继承映射
- 下一篇: Hibernate4一对一关系映射(共享