锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品视频在线,99久久99久久免费精品蜜臀,狠狠爱一区二区三区 http://www.aygfsteel.com/chou/category/32794.htmlrecords of my java learning process zh-cn Sun, 07 Sep 2008 13:57:15 GMT Sun, 07 Sep 2008 13:57:15 GMT 60 Hibernate涓瀵瑰鍙屽悜鍏寵仈鍙?qiáng)inverse鐨勪綔鐢?杞? http://www.aygfsteel.com/chou/archive/2008/09/06/227398.htmlchou chou Sat, 06 Sep 2008 06:41:00 GMT http://www.aygfsteel.com/chou/archive/2008/09/06/227398.html http://www.aygfsteel.com/chou/comments/227398.html http://www.aygfsteel.com/chou/archive/2008/09/06/227398.html#Feedback 0 http://www.aygfsteel.com/chou/comments/commentRss/227398.html http://www.aygfsteel.com/chou/services/trackbacks/227398.html 鍦ㄦ祴璇旽ibernate鐨勪竴瀵瑰鍙屽悜鍏寵仈鏄犲皠鏃訛紝紕板埌寰堟湁瓚g殑闂錛岃窡inverse灞炴х洿鎺ョ浉鍏熾?br style="line-height: normal" />
1銆丳eople.hbm.xml
錛渉ibernate-mapping default-lazy="false"錛?span class="Apple-converted-space">
錛渃lass name="com.persistent.People" table="people"錛?span class="Apple-converted-space">
錛渋d name="id" column="peopleId" unsaved-value="0"錛?span class="Apple-converted-space">
錛済enerator class="increment"錛?span class="Apple-converted-space">
錛?generator錛?span class="Apple-converted-space">
錛?id錛?span class="Apple-converted-space">
錛減roperty name="name" column="name"錛烇紲/property錛?span class="Apple-converted-space">
錛渟et name="addresses" cascade="save-update"錛?br style="line-height: normal" />
錛渒ey column="peopleId" not-null="true" /錛?br style="line-height: normal" />
錛渙ne-to-many class="com.persistent.Address"/錛?br style="line-height: normal" />
錛?set錛?span class="Apple-converted-space">
錛?class錛?br style="line-height: normal" />
錛?hibernate-mapping錛?br style="line-height: normal" />
2銆丄ddress.hbm.xml
錛渉ibernate-mapping錛?br style="line-height: normal" />
錛渃lass name="com.persistent.Address" table="address"錛?span class="Apple-converted-space">
錛渋d name="id" column="addressId" unsaved-value="0"錛?br style="line-height: normal" />
錛済enerator class="increment"錛?br style="line-height: normal" />
錛?generator錛?br style="line-height: normal" />
錛?id錛?span class="Apple-converted-space">
錛渕any-to-one name="people" column="peopleId" insert="false" update="false"錛烇紲/many-to-one錛?span class="Apple-converted-space">
錛減roperty name="addressName" column="addressName"錛烇紲/property錛?span class="Apple-converted-space">
錛減roperty name="codeNumber" column="codeNumber"錛烇紲/property錛?span class="Apple-converted-space">
錛?class錛?span class="Apple-converted-space">
錛?hibernate-mapping錛?br style="line-height: normal" />
3銆丳eople.java鍜孉ddress.java
public class People ...{
private long id;
private String name;
private Set addresses = new HashSet();
...
}
public class Address ...{
private long id;
private People people;
private String addressName;
private String codeNumber;
...
}
4銆佹暟鎹簱緇撴瀯
people琛細(xì){peopleId,name}
address琛細(xì){addressId,peopleId,addressName,codeNumber}
5銆佹祴璇曚唬鐮?br style="line-height: normal" />
People people = new People();
people.setName("linda");
Address address = new Address();
address.setAddressName("yunnan");
address.setCodeNumber("564123");
address.setPeople(people);
people.getAddresses().add(address);
Session session = HibernateSessionFactory.getSession();
session.beginTransaction();
session.save(people);
session.getTransaction().commit();
6銆佽繍琛岀粨鏋?br style="line-height: normal" />
銆銆涓婇潰嫻嬭瘯浠g爜榪愯璧鋒潵姝g‘錛?br style="line-height: normal" />
Hibernate: select max(peopleId) from people
Hibernate: select max(addressId) from address
Hibernate: insert into people (name, peopleId) values (?, ?)
Hibernate: insert into address (addressName, codeNumber, peopleId, addressId) values (?, ?, ?, ?)
Hibernate: update address set peopleId=? where addressId=?
銆銆濡傛灉灝哖eople.hbm.xml鏄犲皠鏀瑰啓涓涓嬶細(xì)
錛渟et name="addresses" cascade="save-update" inverse="true"錛?br style="line-height: normal" />
錛渒ey column="peopleId" not-null="true" /錛?br style="line-height: normal" />
錛渙ne-to-many class="com.persistent.Address"/錛?br style="line-height: normal" />
錛?set錛?br style="line-height: normal" />
銆銆涓嶅悓涔嬪鍦ㄤ簬娣誨姞浜?jiǎn)inverse="true"錛岀粨鏋滐細(xì)
Hibernate: select max(peopleId) from people
Hibernate: select max(addressId) from address
Hibernate: insert into people (name, peopleId) values (?, ?)
Hibernate: insert into address (addressName, codeNumber, addressId) values (?, ?, ?)
銆銆鍙互鐪嬪埌錛宲eopleId騫舵病鏈夊啓鍏ュ埌鍏寵仈鐨刟ddress褰撲腑錛屾暟鎹簱address琛ㄤ腑鐩稿簲璁板綍鐨刾eopleId瀛楁涓虹┖銆?br style="line-height: normal" />
7銆佸垎鏋?br style="line-height: normal" />
銆銆鍦℉ibernate涓紝鏈inverse鏄弽杞殑鎰忔濓紝鍦ㄥ叧鑱斿叧緋諱腑錛宨nverse="false"涓轟富鎺ф柟錛岀敱涓繪帶鏂硅礋璐g淮鎶ゅ璞$殑鍏寵仈鍏崇郴銆傛墍浠ヤ笂闈㈢殑鏄犲皠鏂囦歡鏀瑰姩涔嬪悗錛宎ddress涓轟富鎺ф柟錛宲eople涓鴻鎺ф柟錛屼絾鏄祴璇曚唬鐮佸彧榪涜浜?jiǎn)涓涓繚瀛樻搷浣渟ession.save(people)錛岃繖鏄拡瀵筽eople鐨勶紝鍥犳鏃犳硶姝g‘綰ц仈淇濆瓨address銆傝屽師鏉ョ殑鏄犲皠鏂囦歡涓紙铏界劧娌℃湁鏄庣‘鎸囨槑錛孒ibernate榛樿inverse="false"錛夛紝people涓轟富鎺ф柟錛屽洜姝や繚瀛榩eople鏃跺畠浼?xì)淇濊瘉鍏宠仈鐨刟ddress鐨勬紜繚瀛樸?br style="line-height: normal" />
銆銆涔熷氨鏄錛孒ibernate浠呬粎鎸夌収涓繪帶鏂瑰璞$殑鐘舵佺殑鍙樺寲鏉ュ悓姝ユ洿鏂版暟鎹簱銆傛寜鐓у師鏉ョ殑鏄犲皠鏂囦歡錛宲eople.getAddresses().add(address)錛屽嵆涓繪帶鏂瑰璞$殑鐘舵佸彂鐢熶簡(jiǎn)鏀瑰彉錛屽洜姝ゆ暟鎹簱浼?xì)璺熺潃瀵硅薄鐘舵佺殑鍙樺寲鏉ュ悓姝ユ洿鏂版暟鎹簱錛涜宎ddress.setPeople(people)錛屽嵆琚帶鏂瑰璞$殑鐘舵佸彂鐢熶簡(jiǎn)鏀瑰彉錛屽畠鏄笉鑳借Е鍙戝璞″拰鏁版嵁搴撶殑鍚屾鏇存柊鐨勩?/span>
]]>
主站蜘蛛池模板:
涟水县 |
临澧县 |
如东县 |
元氏县 |
蓬莱市 |
临清市 |
平凉市 |
府谷县 |
司法 |
呈贡县 |
宜君县 |
安乡县 |
南丰县 |
历史 |
普定县 |
庆安县 |
酉阳 |
淄博市 |
绥阳县 |
白山市 |
宁南县 |
丰县 |
广东省 |
礼泉县 |
行唐县 |
吉林省 |
北流市 |
都兰县 |
高青县 |
金溪县 |
徐州市 |
安吉县 |
宁国市 |
通化县 |
锡林浩特市 |
高要市 |
景德镇市 |
延寿县 |
海兴县 |
富宁县 |
扶沟县 |