锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲一区二区三区乱码在线欧洲,亚洲精品国产肉丝袜久久,亚洲精品成人无限看http://www.tkk7.com/msmary/category/26453.html涔﹀北鏈夎礬鍕や負寰勶紝瀛︽搗鏃犳動鑻︿綔鑸?/description>zh-cnWed, 10 Oct 2007 13:00:44 GMTWed, 10 Oct 2007 13:00:44 GMT60Hibernate鍖呬綔鐢ㄨ瑙?/title><link>http://www.tkk7.com/msmary/articles/151868.html</link><dc:creator>璋槑</dc:creator><author>璋槑</author><pubDate>Wed, 10 Oct 2007 12:55:00 GMT</pubDate><guid>http://www.tkk7.com/msmary/articles/151868.html</guid><wfw:comment>http://www.tkk7.com/msmary/comments/151868.html</wfw:comment><comments>http://www.tkk7.com/msmary/articles/151868.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/msmary/comments/commentRss/151868.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/msmary/services/trackbacks/151868.html</trackback:ping><description><![CDATA[<p><span style="font-family: 瀹嬩綋">Hibernate涓鍏卞寘鎷簡23涓猨ar鍖咃紝浠や漢鐪艱姳緙貢銆傛湰鏂囧皢璇︾粏璁茶ВHibernate姣忎釜jar鍖呯殑浣滅敤錛屼究浜庝綘鍦ㄥ簲鐢ㄤ腑鏍規嵁鑷繁鐨勯渶瑕佽繘琛屽彇鑸嶃?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆涓嬭澆Hibernate錛屼緥濡?.0.3紼沖畾鐗堟湰錛岃В鍘嬬緝錛屽彲浠ョ湅鍒頒竴涓猦ibernate2.jar鍜宭ib鐩綍涓嬫湁22涓猨ar鍖咃細</span></p> <p><span style="font-family: 瀹嬩綋">銆銆hibernate2.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆Hibernate鐨勫簱錛屾病鏈変粈涔堝彲璇寸殑錛屽繀欏諱嬌鐢ㄧ殑jar鍖?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆cglib-asm.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆CGLIB搴擄紝Hibernate鐢ㄥ畠鏉ュ疄鐜癙O瀛楄妭鐮佺殑鍔ㄦ佺敓鎴愶紝闈炲父鏍稿績鐨勫簱錛屽繀欏諱嬌鐢ㄧ殑jar鍖?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆dom4j.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆dom4j鏄竴涓狫ava鐨刋ML API錛岀被浼間簬jdom錛岀敤鏉ヨ鍐橷ML鏂囦歡鐨勩俤om4j鏄竴涓潪甯擱潪甯鎬紭縐鐨凧ava XML API錛屽叿鏈夋ц兘浼樺紓銆佸姛鑳藉己澶у拰鏋佺鏄撶敤浣跨敤鐨勭壒鐐癸紝鍚屾椂瀹冧篃鏄竴涓紑鏀炬簮浠g爜鐨勮蔣浠訛紝鍙互鍦⊿ourceForge涓婃壘鍒板畠銆傚湪IBM developerWorks涓婇潰鍙互鎵懼埌涓綃囨枃绔狅紝瀵逛富嫻佺殑Java XML API榪涜鐨勬ц兘銆佸姛鑳藉拰鏄撶敤鎬х殑璇勬祴錛宒om4j鏃犺鍦ㄩ偅涓柟闈㈤兘鏄潪甯稿嚭鑹茬殑銆傛垜鏃╁湪灝嗚繎涓ゅ勾涔嬪墠灝卞紑濮嬩嬌鐢╠om4j錛岀洿鍒扮幇鍦ㄣ傚浠婁綘鍙互鐪嬪埌瓚婃潵瓚婂鐨凧ava杞歡閮藉湪浣跨敤dom4j鏉ヨ鍐橷ML錛岀壒鍒煎緱涓鎻愮殑鏄繛Sun鐨凧AXM涔熷湪鐢╠om4j銆傝繖鏄繀欏諱嬌鐢ㄧ殑jar鍖咃紝Hibernate鐢ㄥ畠鏉ヨ鍐欓厤緗枃浠躲?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆odmg.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆ODMG鏄竴涓狾RM鐨勮鑼冿紝Hibernate瀹炵幇浜哋DMG瑙勮寖錛岃繖鏄竴涓牳蹇冪殑搴擄紝蹇呴』浣跨敤鐨刯ar鍖呫?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆commons-collections.jar錛?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆Apache Commons鍖呬腑鐨勪竴涓紝鍖呭惈浜嗕竴浜汚pache寮鍙戠殑闆嗗悎綾伙紝鍔熻兘姣攋ava.util.*寮哄ぇ銆傚繀欏諱嬌鐢ㄧ殑jar鍖呫?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆commons-beanutils.jar錛?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆Apache Commons鍖呬腑鐨勪竴涓紝鍖呭惈浜嗕竴浜汢ean宸ュ叿綾葷被銆傚繀欏諱嬌鐢ㄧ殑jar鍖呫?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆commons-lang.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆Apache Commons鍖呬腑鐨勪竴涓紝鍖呭惈浜嗕竴浜涙暟鎹被鍨嬪伐鍏風被錛屾槸java.lang.*鐨勬墿灞曘傚繀欏諱嬌鐢ㄧ殑jar鍖呫?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆commons-logging.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆Apache Commons鍖呬腑鐨勪竴涓紝鍖呭惈浜嗘棩蹇楀姛鑳斤紝蹇呴』浣跨敤鐨刯ar鍖呫傝繖涓寘鏈韓鍖呭惈浜嗕竴涓猄imple Logger錛屼絾鏄姛鑳藉緢寮便傚湪榪愯鐨勬椂鍊欏畠浼氬厛鍦–LASSPATH鎵緇og4j錛屽鏋滄湁錛屽氨浣跨敤log4j錛屽鏋滄病鏈夛紝灝辨壘JDK1.4甯︾殑java.util.logging錛屽鏋滀篃鎵句笉鍒板氨鐢⊿imple Logger銆俢ommons-logging.jar鐨勫嚭鐜版槸涓涓巻鍙茬殑鐨勯仐鐣欑殑閬楁喚錛屽綋鍒滱pache鏋佸姏娓歌Sun鎶妉og4j鍔犲叆JDK1.4錛岀劧鑰孞DK1.4欏圭洰灝忕粍宸茬粡鎺ヨ繎鍙戝竷JDK1.4浜у搧鐨勬椂闂翠簡錛屽洜姝ゆ嫆緇濅簡Apache鐨勮姹傦紝浣跨敤鑷繁鐨刯ava.util.logging錛岃繖涓寘鐨勫姛鑳芥瘮log4j宸殑寰堣繙錛屾ц兘涔熶竴鑸?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆鍚庢潵Apache灝卞紑鍙戝嚭鏉ヤ簡commons-logging.jar鐢ㄦ潵鍏煎涓や釜logger銆傚洜姝ょ敤commons-logging.jar鍐欑殑log紼嬪簭錛屽簳灞傜殑Logger鏄彲浠ュ垏鎹㈢殑錛屼綘鍙互閫夋嫨log4j錛宩ava.util.logging鎴栬呭畠鑷甫鐨凷imple Logger銆備笉榪囨垜浠嶇劧寮虹儓寤鴻浣跨敤log4j錛屽洜涓簂og4j鎬ц兘寰堥珮錛宭og杈撳嚭淇℃伅鏃墮棿鍑犱箮絳変簬System.out錛岃屽鐞嗕竴鏉og騫沖潎鍙渶瑕?us銆備綘鍙互鍦℉ibernate鐨剆rc鐩綍涓嬫壘鍒癏ibernate宸茬粡涓轟綘鍑嗗濂戒簡鐨刲og4j鐨勯厤緗枃浠訛紝浣犲彧闇瑕佸埌Apache 緗戠珯鍘諱笅杞絣og4j灝卞彲浠ヤ簡銆俢ommons-logging.jar涔熸槸蹇呴』鐨刯ar鍖呫?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆浣跨敤Hibernate蹇呴』鐨刯ar鍖呭氨鏄互涓婄殑榪欏嚑涓紝鍓╀笅鐨勯兘鏄彲閫夌殑銆?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆ant.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆Ant緙栬瘧宸ュ叿鐨刯ar鍖咃紝鐢ㄦ潵緙栬瘧Hibernate婧愪唬鐮佺殑銆傚鏋滀綘涓嶅噯澶囦慨鏀瑰拰緙栬瘧Hibernate婧愪唬鐮侊紝閭d箞灝辨病鏈変粈涔堢敤錛屽彲閫夌殑jar鍖?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆optional.jar錛?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆Ant鐨勪竴涓緟鍔╁寘銆?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆c3p0.jar錛?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆C3PO鏄竴涓暟鎹簱榪炴帴姹狅紝Hibernate鍙互閰嶇疆涓轟嬌鐢–3PO榪炴帴姹犮傚鏋滀綘鍑嗗鐢ㄨ繖涓繛鎺ユ睜錛屽氨闇瑕佽繖涓猨ar鍖呫?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆proxool.jar錛?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆涔熸槸涓涓繛鎺ユ睜錛屽悓涓娿?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆commons-pool.jar, commons-dbcp.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆DBCP鏁版嵁搴撹繛鎺ユ睜錛孉pache鐨凧akarta緇勭粐寮鍙戠殑錛孴omcat4鐨勮繛鎺ユ睜涔熸槸DBCP銆?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆瀹為檯涓奌ibernate鑷繁涔熷疄鐜頒簡涓涓潪甯擱潪甯哥畝鍗曠殑鏁版嵁搴撹繛鎺ユ睜錛屽姞涓婁笂闈?涓紝浣犲疄闄呬笂鍙互鍦℉ibernate涓婇夋嫨4縐嶄笉鍚岀殑鏁版嵁搴撹繛鎺ユ睜錛岄夋嫨鍝竴涓湅涓漢鐨勫亸濂斤紝涓嶈繃DBCP鍙兘鏇撮氱敤涓浜涖傚彟澶栧己璋冧竴鐐癸紝濡傛灉鍦‥JB涓嬌鐢℉ibernate錛屼竴瀹氳鐢ˋpp Server鐨勮繛鎺ユ睜錛屼笉瑕佺敤浠ヤ笂4縐嶈繛鎺ユ睜錛屽惁鍒欏鍣ㄧ鐞嗕簨鍔′笉璧蜂綔鐢ㄣ?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆connector.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆JCA 瑙勮寖錛屽鏋滀綘鍦ˋpp Server涓婃妸Hibernate閰嶇疆涓篊onnector鐨勮瘽錛屽氨闇瑕佽繖涓猨ar銆備笉榪囧疄闄呬笂涓鑸珹pp Server鑲畾浼氬甫涓婅繖涓寘錛屾墍浠ュ疄闄呬笂鏄浣欑殑鍖呫?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆jaas.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆JAAS鏄敤鏉ヨ繘琛屾潈闄愰獙璇佺殑錛屽凡緇忓寘鍚湪JDK1.4閲岄潰浜嗐傛墍浠ュ疄闄呬笂鏄浣欑殑鍖呫?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆jcs.jar錛?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆濡傛灉浣犲噯澶囧湪Hibernate涓嬌鐢↗CS鐨勮瘽錛岄偅涔堝繀欏誨寘鎷畠錛屽惁鍒欏氨涓嶇敤銆?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆jdbc2_0-stdext.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆JDBC2.0鐨勬墿灞曞寘錛屼竴鑸潵璇存暟鎹簱榪炴帴姹犱細鐢ㄤ笂瀹冦備笉榪嘇pp Server閮戒細甯︿笂錛屾墍浠ヤ篃鏄浣欑殑銆?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆jta.jar錛?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆JTA瑙勮寖錛屽綋Hibernate浣跨敤JTA鐨勬椂鍊欓渶瑕侊紝涓嶈繃App Server閮戒細甯︿笂錛屾墍浠ヤ篃鏄浣欑殑銆?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆junit.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆Junit鍖咃紝褰撲綘榪愯Hibernate鑷甫鐨勬祴璇曚唬鐮佺殑鏃跺欓渶瑕侊紝鍚﹀垯灝變笉鐢ㄣ?/span></p> <p><span style="font-family: 瀹嬩綋">銆銆xalan.jar, xerces.jar, xml-apis.jar:</span></p> <p><span style="font-family: 瀹嬩綋">銆銆Xerces鏄疿ML瑙f瀽鍣紝Xalan鏄牸寮忓寲鍣紝xml-apis瀹為檯涓婃槸JAXP銆備竴鑸珹pp Server閮戒細甯︿笂錛孞DK1.4涔熷寘鍚簡瑙f瀽鍣紝涓嶈繃涓嶆槸Xerces錛屾槸Crimson錛屾晥鐜囨瘮杈冨樊錛屼笉榪嘓ibernate鐢╔ML鍙笉榪囨槸璇誨彇閰嶇疆鏂囦歡錛屾ц兘娌′粈涔堢揣瑕佺殑錛屾墍浠ヤ篃鏄浣欑殑銆?</span></p> <img src ="http://www.tkk7.com/msmary/aggbug/151868.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/msmary/" target="_blank">璋槑</a> 2007-10-10 20:55 <a href="http://www.tkk7.com/msmary/articles/151868.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>Hibernate鐨勭涓涓竴瀵瑰瀹炰緥http://www.tkk7.com/msmary/articles/151867.html璋槑璋槑Wed, 10 Oct 2007 12:53:00 GMThttp://www.tkk7.com/msmary/articles/151867.htmlhttp://www.tkk7.com/msmary/comments/151867.htmlhttp://www.tkk7.com/msmary/articles/151867.html#Feedback0http://www.tkk7.com/msmary/comments/commentRss/151867.htmlhttp://www.tkk7.com/msmary/services/trackbacks/151867.html涓銆?/span>鏁版嵁搴撶殑寤虹珛錛堜嬌鐢∕ySQL錛?/span>

create database if not exists `sampledb`;

use `sampledb`;

/*table structure for table `sampledb`.`personinfo` */

drop table if exists `sampledb`.`room`;

create table room (

 room_id int not null auto_increment,

 address varchar(32) not null default '',

 primary key (room_id)

) type=innodb;

create database if not exists `sampledb`;

use `sampledb`;

/*table structure for table `sampledb`.`personinfo` */

drop table if exists `sampledb`.`user`;

create table user (

 user_id int not null auto_increment,

 name varchar(16) not null default '',

 room_id int not null,

 index (room_id),

 foreign key (room_id) references room(room_id),

 primary key (user_id)

) type=innodb;

浜屻乁ser.java

package com.tanm.test;

publicclass User {

    privatelongid;

    private String name;

    private Room room;

    publiclong getId() {

       returnid;

    }

    publicvoid setId(long id) {

       this.id = id;

    }

    public String getName() {

       returnname;

    }

    publicvoid setName(String name) {

       this.name = name;

    }

    public Room getRoom() {

       returnroom;

    }

    publicvoid setRoom(Room room) {

       this.room = room;

    }

}

涓夈?span style="font-size: 10pt">User.hbm.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC

          "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

          "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

 <class name="com.tanm.test.User" table="user">

    <id name="id" column="user_id" type="long">

      <generator class="increment"/>

    </id>

    <property name="name" column="name" type="string" not-null="true" />

    <many-to-one name="room" column="room_id" class="com.tanm.test.Room" />

 </class>

</hibernate-mapping>

鍥涖丷oom.java

package com.tanm.test;

import java.util.HashSet;

import java.util.Set;

publicclass Room {

    privatelongid;

    private String address;

    private Set users = new HashSet();

    public String getAddress() {

       returnaddress;

    }

    publicvoid setAddress(String address) {

       this.address = address;

    }

    publiclong getId() {

       returnid;

    }

    publicvoid setId(long id) {

       this.id = id;

    }

    public Set getUsers() {

       returnusers;

    }

    publicvoid setUsers(Set users) {

       this.users = users;

    }

}

浜斻丷oom.hbm.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC

          "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

          "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

 <class name="com.tanm.test.Room" table="room">

    <id name="id" column="room_id" unsaved-value="0">

      <generator class="increment"/>

    </id>

    <property name="address" column="address" type="string" not-null="true" />

    <set name="users" table="user" inverse="true" cascade="all">

       <key column="room_id"/>

       <one-to-many class="com.tanm.test.User"/>

    </set>

 </class>

</hibernate-mapping>

鍏乀est.java

package com.tanm.test;

import org.hibernate.*;

import org.hibernate.cfg.*;

publicclass Test {

    publicstaticvoid main(String[] args) throws HibernateException {

       SessionFactory sessionFactory = new Configuration().configure()

              .buildSessionFactory();

       Room room = new Room();

       room.setAddress("China_xi'an");

       User user1 = new User();

       user1.setName("111");

       User user2 = new User();

       user2.setName("222");

       user1.setRoom(room);

       user2.setRoom(room);

       room.getUsers().add(user1);

       room.getUsers().add(user2);

       Session session = sessionFactory.openSession();

       Transaction tx = session.beginTransaction();

       session.save(room);

       tx.commit();

       session.close();

       sessionFactory.close();

    }

}

鎴愬姛榪愯鍚庣殑緇撴灉錛?/span>

Hibernate: insert into room (address, room_id) values (?, ?)

Hibernate: insert into user (name, room_id, user_id) values (?, ?, ?)

Hibernate: insert into user (name, room_id, user_id) values (?, ?, ?)

璋槑 2007-10-10 20:53 鍙戣〃璇勮
]]>
涓涓畬鏁寸殑hibernate渚嬪瓙http://www.tkk7.com/msmary/articles/151866.html璋槑璋槑Wed, 10 Oct 2007 12:52:00 GMThttp://www.tkk7.com/msmary/articles/151866.htmlhttp://www.tkk7.com/msmary/comments/151866.htmlhttp://www.tkk7.com/msmary/articles/151866.html#Feedback0http://www.tkk7.com/msmary/comments/commentRss/151866.htmlhttp://www.tkk7.com/msmary/services/trackbacks/151866.html1 銆傚緩绔嬫暟鎹簱

Database:mysql
drop database if exists SAMPLEDB;
create database hello;
use hello;

create table CUSTOMERS (
  ID int not null primary key,
  NAME varchar(15) not null,
  PASSWORD varchar(8) not null
);

2
銆傚湪eclipse 涓柊寤哄伐紼?/span>hbtest

3
銆傚湪src涓柊寤?/span>package hbm

4
銆傛柊寤?/span>pojo綾?/span>Customer

package hbm;

public class Customer {
    private int id;
    private String name;
    private String password;
    /**
     * @return Returns the id.
     */
    public int getId() {
        return id;
    }
    /**
     * @param id
     *            The id to set.
     */
    public void setId(int id) {
        this.id = id;
    }
    /**
     * @return Returns the name.
     */
    public String getName() {
        return name;
    }
    /**
     * @param name
     *            The name to set.
     */
    public void setName(String name) {
        this.name = name;
    }
    /**
     * @return Returns the password.
     */
    public String getPassword() {
        return password;
    }
    /**
     * @param password
     *            The password to set.
     */
    public void setPassword(String password) {
        this.password = password;
    }
    //constructor
    public Customer() {
    }

}


5
銆備嬌鐢?/span>myeclipse鎻掍歡寤虹珛hibernate.cfg.xml   浣嶄簬src鐩綍涓?/span>
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

<session-factory> 

<property name="dialect">org.hibernate.dialect.MySQLDialect</property>

<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="connection.url">
jdbc:mysql://127.0.0.1:3306/hello</property>
    <property name="myeclipse.connection.profile">
hbmysql</property>

<property name="connection.username">root</property>
    <property name="connection.password">
123</property>
    <mapping resource="hbm/Customer.hbm.xml" />

</session-factory>

</hibernate-configuration>


6
銆傚湪hbm package鍐呮柊寤?/span>Customer.hbm.xml
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-mapping PUBLIC
          "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-mapping>
<class name="hbm.Customer" table="CUSTOMERS">
<id name="id" column="ID" type="int">
<generator class="increment"/>
</id>
<property name="name" column="NAME" type="string" not-null="true"/>
<property name="password" column="PASSWORD" type="string" not-null="true"/>
</class>

</hibernate-mapping>


7
銆備嬌鐢?/span>hibernate鎿嶄綔鏁版嵁搴?/span>
package hbm;

import org.hibernate.*;
import org.hibernate.cfg.*;
import java.util.Iterator;
import java.util.List;

public class Hbmain {

    public static SessionFactory sessionFactory;//
鏁版嵁瀛樺偍婧?/span>
    static {
        try {
            Configuration config = new Configuration().configure();
            sessionFactory = config.buildSessionFactory();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /*
     *
灝嗕竴涓?/span>customer瀵硅薄瀛樺叆database
     * @Customer customer Object
     */
    public void saveCustomer(Customer ct) {
        Session session = sessionFactory.openSession();
        Transaction tx = null;
        try {
            tx = session.beginTransaction();
            session.save(ct);
            tx.commit();
        } catch (Exception e) {
            tx.rollback();
            e.printStackTrace();
        } finally {
            session.close();
        }
    }

    /*
     *
鏌ユ壘鎵鏈夌殑customer object
     */
    public void findAll() {
        Session session = sessionFactory.openSession();
        Transaction tx = null;
        try {
            tx = session.beginTransaction();
            List customers = session.createQuery(
                    "from Customer as c order by c.name asc").list();
            Iterator it = customers.iterator();
            System.out.println("append:"+customers.size());
            while(it.hasNext())
            {
                Customer c = (Customer)it.next();
                System.out.println("ID:" + c.getId());
                System.out.println("Name:" + c.getName());
                System.out.println("Pass:" + c.getPassword());
            }
            tx.commit();
        } catch (Exception e) {
            tx.rollback();
        } finally {
            session.close();
        }

    }

    /*
     *
淇敼customer Name
     * @name
     */
    public void loadUpdate(int customer_id, String name) {
        Session session = sessionFactory.openSession();
        Transaction tx = null;
        try {
            tx = session.beginTransaction();
            Customer c = (Customer) session.load(Customer.class, customer_id);
            c.setName(name);
            tx.commit();

        } catch (Exception e) {
            if (tx != null) {
                tx.rollback();
            }
            e.printStackTrace();

        } finally {
            session.close();
        }

    }
  
    /*
     *
嫻嬭瘯浠ヤ笂鐨勬柟娉?/span>
     * save() find() update()
     */
   
    public void test()
    {
        Customer ct = new Customer();
        //ct.setId(5);
        ct.setName("buaa");
        ct.setPassword("5768");
        this.saveCustomer(ct);
        this.findAll();
        this.loadUpdate(ct.getId(),"phop");
    }
   
   
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Hbmain hb = new Hbmain();
        hb.test();
        sessionFactory.close();

    }

}

鍒濆hibernate閬囧埌鐨勫嚑涓棶棰樼殑瑙e喅

鍙傝冧功鏄瓩鍗惔鐨?lt;綺鵑欻ibernate>

hibernate 3 + mysql 5.0

涔︿笂鐨勪緥瀛愮2绔?鍒濆鍖?hibernate Configuration瀹炰緥

浠g爜濡備笅錛?/span>

Configuration config = new Configuration();

config.addClass("Customer.class");

SessionFactory sessionfactory = config.buildSessionFactory();

閰嶇疆鏂囦歡鏄?hibernate.properties

榪愯鍑洪敊 錛氭彁紺轟負

org.hibernate.HibernateException: database product name cannot be null

鏄劇劧鏄厤緗枃浠剁殑闂

鎴戠敤鐨勯厤緗枃浠舵槸 hibernate.cfg.xml

淇敼涓轟互涓嬩唬鐮?鎴愬姛榪愯

Configuration config = new Configuration().configure();
SessionFactory sessionFactory = config.buildSessionFactory();

鍘熷洜:浣跨敤浜唜m浣滀負閰嶇疆鏂囦歡錛岃屾病鏈夐夋嫨properties鏂囦歡,搴旇浣跨敤new Configuration().config();

涔︿笂渚嬪瓙絎叚绔犱竴瀵瑰鏄犲皠

customer.hbm.xml 涓?/span>

鍘熶唬鐮佷負

<hibernate-mapping>
    <class name="demo1.Customer" table="CUSTOMERS">
        <id name="id" type="long" column="ID">
            <generator class="increment" />
        </id>
        <property name="name" type="string">
            <column name="NAME" length="15" />
        </property>
    </class>
</hibernate-mapping>

姝ゆ椂鎵ц鍏禕usiness.java鏃?/span>

Customer customer = (Customer) session.load(Customer.class,
                    new Long(customer_id));

鍑虹幇濡備笅閿欒

1 Exception in thread "main" java.lang.NullPointerException
2  at org.hibernate.tuple.AbstractTuplizer.createProxy(AbstractTuplizer.java:249)
3  at org.hibernate.persister.entity.BasicEntityPersister.createProxy(BasicEntityPersister.java:2831)
4  at org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:218)
5  at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:163)
6  at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:79)
7  at org.hibernate.impl.SessionImpl.load(SessionImpl.java:603)
8  at org.hibernate.impl.SessionImpl.load(SessionImpl.java:596)

淇敼涓?/span>

<hibernate-mapping default-lazy="false">
<class name="demo1.Customer" table="CUSTOMERS">
        <id name="id" type="long" column="ID">
            <generator class="increment" />
        </id>
        <property name="name" type="string">
            <column name="NAME" length="15" />
        </property>
    </class>
</hibernate-mapping>

闂瑙e喅

鍘熷洜鍦ㄤ簬錛?Hibernate 3.0 涓嶩ibernate2.1鐨勬簮浠g爜鏄笉鍏煎鐨?br /> 鍦℉ibernate2.1涓紝lazy灞炴х殑榛樿鍊間負“false”錛岃屽湪Hibernate3.0涓紝lazy灞炴х殑榛樿鍊間負“true”銆?/span>



璋槑 2007-10-10 20:52 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 中文字幕手机在线免费看电影| 免费一级做a爰片久久毛片潮| 无码少妇精品一区二区免费动态 | 久久精品国产亚洲AV无码娇色| 97超高清在线观看免费视频| 中文字幕亚洲综合久久菠萝蜜| 精品一区二区三区高清免费观看 | 精品亚洲永久免费精品| 香蕉视频在线免费看| 国产亚洲日韩在线三区| 免费精品一区二区三区第35| 91大神亚洲影视在线| 成人免费毛片内射美女-百度| 亚洲欧洲免费无码| 亚洲av区一区二区三| free哆拍拍免费永久视频 | 亚洲偷自精品三十六区| 女人与禽交视频免费看| 免费精品国自产拍在线播放| 亚洲人成中文字幕在线观看| 久久免费观看国产99精品| 亚洲偷自精品三十六区| 国产在线19禁免费观看国产| av网站免费线看| 亚洲精选在线观看| 最近2019中文字幕免费看最新| 精品免费AV一区二区三区| 在线观看亚洲精品国产| 9420免费高清在线视频| 亚洲男同gay片| 亚洲AV无码一区二区二三区入口 | 又粗又长又爽又长黄免费视频 | 暖暖免费日本在线中文| 亚洲午夜一区二区三区| 亚洲av再在线观看| 久草视频在线免费看| 亚洲高清毛片一区二区| 亚洲精品无码久久久久去q| 97在线观免费视频观看| 国产精品青草视频免费播放| 亚洲不卡中文字幕|