锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
聽
Hibernate閰嶇疆鏂囦歡鍙互鏈変袱縐嶆牸寮忥紝涓縐嶆槸 hibernate.properties 錛屽彟涓縐嶆槸 hibernate.cfg.xml
鍚庤呯◢寰柟渚夸竴浜涳紝褰撳鍔爃bm鏄犲皠鏂囦歡鐨勬椂鍊欙紝鍙互鐩存帴鍦?hibernate.cfg.xml 閲岄潰澧炲姞錛屼笉蹇呭儚 hibernate.properties 蹇呴』鍦ㄥ垵濮嬪寲浠g爜涓姞鍏ャ?/p>
浣嗕笉綆℃庝箞璇達紝涓ょ鐨勯厤緗」閮芥槸涓鏍風殑錛屼笅闈㈣緇嗕粙緇嶏細
鍦℉ibernate鐨剆rc鐩綍涓嬫湁涓涓?hibernate.properties 妯℃澘錛屾垜浠笉蹇呰嚜宸變粠澶村啓錛屼慨鏀規ā鏉垮氨鍙互浜?)
hibernate.query.substitutions true 1, false 0, yes 'Y', no 'N'
榪欎釜閰嶇疆鎰忔濇槸褰撲綘鍦℉ibernate閲岄潰杈撳叆true鐨勬椂鍊欙紝Hibernate浼氳漿鍖栦負1鎻掑叆鏁版嵁搴擄紝褰撲綘鍦℉ibernate閲岄潰杈撳叆false鐨勬椂鍊欙紝Hibernate浼氳漿鍖栦負0鎻掑叆鏁版嵁搴擄紝鍚庨潰鐨刌錛孨鍚岀悊銆?/p>
瀵逛簬鏌愪簺鏁版嵁搴擄紝渚嬪Oracle鏉ヨ錛屾病鏈塨oolean鏁版嵁綾誨瀷錛屽氨鏄噰鐢?浠h〃true錛?浠h〃false錛屽洜姝や嬌鐢ㄨ繖涓厤緗湪Hibernate閲岄潰鐩存帴鐢╰rue/false浼氶潪甯哥洿瑙傘?/p>
hibernate.dialect net.sf.hibernate.dialect.MySQLDialect
hibernate.connection.driver_class com.mysql.jdbc.Driver
hibernate.connection.url jdbc:mysql:///test
hibernate.connection.username root
hibernate.connection.password
榪欐槸涓涓繛鎺ySQL鏁版嵁搴撶殑渚嬪瓙錛屽緢鐩磋錛屼笉蹇呰В閲婏紝涓嶅悓鐨勬暟鎹簱鐨勮繛鎺ュ弬鏁版ā鏉夸腑鍏ㄩ儴緇欏嚭浜嗐?/p>
hibernate.connection.pool_size 1
hibernate.statement_cache.size 25
榪欐槸Hibernate鑷甫鐨勮繛鎺ユ睜鐨勯厤緗弬鏁幫紝鍦ㄩ粯璁ゆ儏鍐典笅灝嗛噰鐢ㄣ傛剰涔夊緢鐩磋錛屼笉澶氳В閲娿?/p>
鍙槸鎻愰啋涓鐐癸紝Hibernate榪欎釜榪炴帴姹犳槸闈炲父鍘熷闈炲父綆鍗曠殑榪炴帴姹狅紝濡傛灉浣犲湪欏圭洰涓敤Hibernate鐨勮瘽錛屽緩璁綘棣栭堿pp Server鐨勮繛鎺ユ睜錛屾閫塇ibernate甯︾殑DBCP榪炴帴姹犮傝嚜甯︾殑榪炴帴姹犲簲璇ュ仛涓烘湯閫夈?/p>
濡傛灉浣犻噰鐢―BCP榪炴帴姹狅紝闄や簡瑕侀厤緗瓺BCP榪炴帴姹犱互澶栵紝榪橀渶瑕佸彇娑堟帀涓嬭鐨勬敞閲婏細
hibernate.connection.provider_class net.sf.hibernate.connection.DBCPConnectionProvider
鍏跺畠鐨勮繛鎺ユ睜鍚岀悊銆?/p>
濡傛灉閲囩敤App Server鐨勮繛鎺ユ睜錛屽亣璁続pp Server榪炴帴姹犵殑DataSource鐨凧NDI鍚嶇О涓?mypool"鐨勮瘽錛岄厤緗簲璇ュ涓嬶細
hibernate.dialect net.sf.hibernate.dialect.MySQLDialect
hibernate.connection.datasource mypool
hibernate.connection.provider_class net.sf.hibernate.connection.DatasourceConnectionProvider
鍏跺畠鍙傛暟灝變笉蹇呭啓浜嗭紝鍥犱負宸茬粡鍦ˋpp Server閰嶇疆榪炴帴姹犵殑鏃跺欐寚瀹氬ソ浜嗐?/p>
濡傛灉浣犱笉鏄湪App Server鐜涓嬌鐢℉ibernate錛屼緥濡傝繙紼嬪鎴風紼嬪簭錛屼絾鏄綘鍙堟兂鐢ˋpp Server鐨勬暟鎹簱榪炴帴姹狅紝閭d箞浣犺繕闇瑕侀厤緗甁NDI鐨勫弬鏁幫紝渚嬪Hibernate榪炴帴榪滅▼Weblogic涓婄殑鏁版嵁搴撹繛鎺ユ睜錛?/p>
hibernate.dialect net.sf.hibernate.dialect.MySQLDialect
hibernate.connection.datasource mypool
hibernate.connection.provider_class net.sf.hibernate.connection.DatasourceConnectionProvider
hibernate.jndi.class weblogic.jndi.WLInitialContextFactory
hibernate.jndi.url t3://servername:7001/
鏈鍚庯紝濡傛灉浣犻渶瑕佸湪EJB鎴栬匤TA涓嬌鐢℉ibernate錛岄渶瑕佸彇娑堜笅琛岀殑娉ㄩ噴錛?/p>
hibernate.transaction.factory_class net.sf.hibernate.transaction.JTATransactionFactory
鏉傞」閰嶇疆錛?/p>
hibernate.show_sql false
鏄惁灝咹ibernate鍙戦佺粰鏁版嵁搴撶殑sql鏄劇ず鍑烘潵錛岃繖鏄竴涓潪甯擱潪甯告湁鐢ㄥ鐨勫姛鑳姐傚綋浣犲湪璋冭瘯Hibernate鐨勬椂鍊欙紝璁〩ibernate鎵撳嵃sql璇彞錛屽彲浠ュ府鍔╀綘榪呴熻В鍐抽棶棰樸?/p>
#hibernate.connection.isolation 4
鎸囧畾鏁版嵁搴撶殑闅旂綰у埆錛屽線寰涓嶅悓鐨勬暟鎹簱鏈夎嚜宸卞畾涔夌殑闅旂綰у埆錛屾湭蹇呮槸Hibernate鐨勮緗墍鑳芥洿鏀圭殑錛屾墍浠ヤ篃涓嶅繀鍘葷瀹冧簡銆?/p>
hibernate.jdbc.fetch_size 50
hibernate.jdbc.batch_size 25
榪欎袱涓夐」闈炲父闈炲父闈炲父閲嶈錛侊紒錛佸皢涓ラ噸褰卞搷Hibernate鐨凜RUD鎬ц兘!
C = create, R = read, U = update, D = delete
Fetch Size 鏄瀹欽DBC鐨凷tatement璇誨彇鏁版嵁鐨勬椂鍊欐瘡嬈′粠鏁版嵁搴撲腑鍙栧嚭鐨勮褰曟潯鏁般?/p>
渚嬪涓嬈℃煡璇?涓囨潯璁板綍錛屽浜嶰racle鐨凧DBC椹卞姩鏉ヨ錛屾槸涓嶄細1嬈℃ф妸1涓囨潯鍙栧嚭鏉ョ殑錛岃屽彧浼氬彇鍑篎etch Size鏉℃暟錛屽綋綰綍闆嗛亶鍘嗗畬浜嗚繖浜涜褰曚互鍚庯紝鍐嶅幓鏁版嵁搴撳彇Fetch Size鏉℃暟鎹?/p>
鍥犳澶уぇ鑺傜渷浜嗘棤璋撶殑鍐呭瓨娑堣椼傚綋鐒禙etch Size璁劇殑瓚婂ぇ錛岃鏁版嵁搴撶殑嬈℃暟瓚婂皯錛岄熷害瓚婂揩錛汧etch Size瓚婂皬錛岃鏁版嵁搴撶殑嬈℃暟瓚婂錛岄熷害瓚婃參銆?/p>
榪欐湁鐐瑰儚騫蟲椂鎴戜滑鍐欑▼搴忓啓紜洏鏂囦歡涓鏍鳳紝璁劇珛涓涓狟uffer錛屾瘡嬈″啓鍏uffer錛岀瓑Buffer婊′簡浠ュ悗錛屼竴嬈″啓鍏ョ‖鐩橈紝閬撶悊鐩稿悓銆?/p>
Oracle鏁版嵁搴撶殑JDBC椹卞姩榛樿鐨凢etch Size=10錛屾槸涓涓潪甯鎬繚瀹堢殑璁懼畾錛屾牴鎹垜鐨勬祴璇曪紝褰揊etch Size=50鐨勬椂鍊欙紝鎬ц兘浼氭彁鍗?鍊嶄箣澶氾紝褰揊etch Size=100錛屾ц兘榪樿兘緇х畫鎻愬崌20%錛孎etch Size緇х畫澧炲ぇ錛屾ц兘鎻愬崌鐨勫氨涓嶆樉钁椾簡銆?/p>
鍥犳鎴戝緩璁嬌鐢∣racle鐨勪竴瀹氳灝咶etch Size璁懼埌50銆?/p>
涓嶈繃騫朵笉鏄墍鏈夌殑鏁版嵁搴撻兘鏀寔Fetch Size鐗規э紝渚嬪MySQL灝變笉鏀寔銆?/p>
MySQL灝卞儚鎴戜笂闈㈣鐨勯偅縐嶆渶鍧忕殑鎯呭喌錛屼粬鎬繪槸涓涓嬪氨鎶?涓囨潯璁板綍瀹屽叏鍙栧嚭鏉ワ紝鍐呭瓨娑堣椾細闈炲父闈炲父鎯婁漢錛佽繖涓儏鍐靛氨娌℃湁浠涔堝ソ鍔炴硶浜?:(
Batch Size鏄瀹氬鏁版嵁搴撹繘琛屾壒閲忓垹闄わ紝鎵歸噺鏇存柊鍜屾壒閲忔彃鍏ョ殑鏃跺欑殑鎵規澶у皬錛屾湁鐐圭浉褰撲簬璁劇疆Buffer緙撳啿鍖哄ぇ灝忕殑鎰忔濄?/p>
Batch Size瓚婂ぇ錛屾壒閲忔搷浣滅殑鍚戞暟鎹簱鍙戦乻ql鐨勬鏁拌秺灝戯紝閫熷害灝辮秺蹇傛垜鍋氱殑涓涓祴璇曠粨鏋滄槸褰揃atch Size=0鐨勬椂鍊欙紝浣跨敤Hibernate瀵筄racle鏁版嵁搴撳垹闄?涓囨潯璁板綍闇瑕?5縐掞紝Batch Size = 50鐨勬椂鍊欙紝鍒犻櫎浠呬粎闇瑕?縐掞紒錛侊紒
鍙鏈夊涔堝ぇ鐨勬ц兘鎻愬崌錛佸緢澶氫漢鍋欻ibernate鍜孞DBC鐨勬彃鍏ユц兘嫻嬭瘯浼氬鎬殑鍙戠幇Hibernate閫熷害鑷沖皯鏄疛DBC鐨勪袱鍊嶏紝灝辨槸鍥犱負Hibernate浣跨敤浜咮atch Insert錛岃屼粬浠啓鐨凧DBC娌℃湁浣跨敤Batch鐨勭紭鏁呫?/p>
浠ユ垜鐨勭粡楠屾潵鐪嬶紝Oracle鏁版嵁搴?Batch Size = 30 鐨勬椂鍊欐瘮杈冨悎閫傦紝50涔熶笉閿欙紝鎬ц兘浼氱戶緇彁鍗囷紝50浠ヤ笂錛屾ц兘鎻愬崌鐨勯潪甯稿井寮憋紝鍙嶈屾秷鑰楀唴瀛樻洿鍔犲錛屽氨娌℃湁蹇呰浜嗐?/p>
#hibernate.jdbc.use_scrollable_resultset true
璁懼畾鏄惁鍙互浣跨敤JDBC2.0瑙勮寖鐨勫彲婊氬姩緇撴灉闆嗭紝榪欏Hibernate鐨勫垎欏墊樉紺烘湁涓瀹氱殑浣滅敤錛岄粯璁ゅ氨濂戒簡銆?/p>
#hibernate.cglib.use_reflection_optimizer false
榛樿鎵撳紑錛屽惎鐢╟glib鍙嶅皠浼樺寲銆俢glib鏄敤鏉ュ湪Hibernate涓姩鎬佺敓鎴怭O瀛楄妭鐮佺殑錛屾墦寮浼樺寲鍙互鍔犲揩瀛楄妭鐮佹瀯閫犵殑閫熷害銆?/p>
涓嶈繃錛屽綋浣犲湪璋冭瘯紼嬪簭榪囩▼涓紝鐗瑰埆鏄拰proxy錛宭azy loading鐩稿叧鐨勫簲鐢ㄤ腑錛屼唬鐮佸嚭閿欙紝浣嗘槸鍑洪敊鎻愮ず淇℃伅鏈夎鐒変笉璇︼紝閭d箞浣犲彲浠ユ妸cglib浼樺寲鍏蟲帀錛岃繖鏍稨ibernate浼氳緭鍑烘瘮杈冭緇嗙殑璋冭瘯淇℃伅錛屽府鍔╀綘debug銆?/p>
Hibernate 鍏ラ棬 - 瀹炴垬婕旂粌
聽
鏈枃閰嶇疆鐜錛?br />JBuilder X
jdk 1.4.2
Mysql 4.0.11 椹卞姩:mm.mysql-2.0.4-bin.jar(org.gjt.mm.mysql.Driver)
Hibernate 2.1
瑙e帇Hibernate
鎵撳紑JB錛屾柊寤哄伐紼嬶紝鍚嶄負錛歨ibernate
鍔犲叆Hibernate闇瑕佺殑鍖呬笌MYSQL椹卞姩
姝ラ:file->new project->name涓緭鍏ibernate,directory閫夋嫨浣犺瀛樻斁鏈伐紼嬬殑璺緞->next
->required libraries->add->new->name涓緭鍏ヤ綘瑕佽緗殑hibernate鍖呭悕
->add->閫夋嫨浣爃ibernate瑙e帇鍒扮殑鐩綍錛岄変腑璇ョ洰褰曚笅鐨刪ibernate2.jar涓巐ib鐩綍涓嬬殑鎵鏈塲ar鍖咃紝鍐嶆妸浣犵殑MYSQL椹卞姩鍖呬篃鍔犺繘鍘?/p>
鐒跺悗涓鐩存寜OK錛宯ext銆?/p>
鏂板緩涓涓被,鍚嶄負Hello_Bean.java,浠g爜濡備笅錛?/p>
package hibernate;
import java.io.Serializable;
public class Hello_Bean implements Serializable {
private String name;//榪欓噷name涓巃ddress鍜宨d鐨勫悕瀛楀彲浠ヨ嚜宸卞畾錛屼笉浼氭湁浠涔堝獎鍝?浣唃et涓巗et鏂規硶涓嶅彲浠ャ傚洜涓洪偅寰楄窡鏁版嵁搴撲笌閰嶇疆鏂囦歡瀵瑰簲銆?/p>
private String address;
private int id;
public Hello_Bean() {
}
public Hello_Bean(String name, String address) {//鏋勯犲嚱鏁?鐪嬪畬鏈珷浠ュ悗鐩鎬俊浣犱細鏄庣櫧鐨勪簡
this.name = name;
this.address = address;
}
public String getName() {//姝ゆ柟娉曞悕蹇呴』涓嶩ello_Bean.hbm.xml鏂囦歡閲岀殑瀵瑰簲鐨勫悕瀛椾竴鏍鳳紝涓嬮潰浼氳緇嗚
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getId() {//蹇呴』鐨勬柟娉?br />return id;
}
public void setId(int id)//蹇呴』鐨勬柟娉?br />{
this.id = id;
}
}
瀹屾垚榪欎竴姝ヤ互鍚庣紪璇?/p>
灝唄ibernate瑙e帇鍚庣殑鐩綍涓嬬殑src鏂囦歡澶歸噷鐨刪ibernate.properties涓巐og4j.properties鏂囦歡澶嶅埗鍒頒綘鐨勫伐紼嬬洰褰曠殑classes鐩綍涓?/p>
(渚嬪hibernate\classes\鐩綍涓?錛?/p>
鎵撳紑hibernate.properties鏂囦歡錛屾壘鍒?/p>
## HypersonicSQL
hibernate.dialect net.sf.hibernate.dialect.HSQLDialect
hibernate.connection.driver_class org.hsqldb.jdbcDriver
hibernate.connection.username sa
hibernate.connection.password
hibernate.connection.url jdbc:hsqldb:hsql://localhost
hibernate.connection.url jdbc:hsqldb:test
hibernate.connection.url jdbc:hsqldb:.
鏀逛負
## HypersonicSQL
#hibernate.dialect net.sf.hibernate.dialect.HSQLDialect
#hibernate.connection.driver_class org.hsqldb.jdbcDriver
#hibernate.connection.username sa
#hibernate.connection.password
#hibernate.connection.url jdbc:hsqldb:hsql://localhost
#hibernate.connection.url jdbc:hsqldb:test
#hibernate.connection.url jdbc:hsqldb:.
鍐嶆壘鍒?/p>
## MySQL
#hibernate.dialect net.sf.hibernate.dialect.MySQLDialect
#hibernate.connection.driver_class org.gjt.mm.mysql.Driver
#hibernate.connection.driver_class com.mysql.jdbc.Driver
#hibernate.connection.url jdbc:mysql:///test
#hibernate.connection.username root
#hibernate.connection.password
鏀逛負
## MySQL
hibernate.dialect net.sf.hibernate.dialect.MySQLDialect
hibernate.connection.driver_class org.gjt.mm.mysql.Driver
hibernate.connection.url jdbc:mysql://localhost:3306/test
hibernate.connection.username root
hibernate.connection.password
涓婇潰鐨刄RL璇鋒敼涓轟綘鑷繁鐨?/p>
瀹屾垚浠ュ悗鍒涘緩涓涓┖鐨勬枃浠訛紝淇濆瓨鍦ㄤ綘宸ョ▼鐨勭被鏂囦歡鍚屼釜鏂囦歡澶歸噷錛堜緥濡俬ibernate\classes\hibernate\鐩綍涓嬶級錛屾枃浠跺悕涓猴細Hello_Bean.hbm.xml
鍐呭濡備笅錛?/p>
聽
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping>
<class name="hibernate.Hello_Bean" table="test_hibernate" >
<id name="id" column="id">
<generator class="identity"/>
</id>
<property name="name" type="string" update="true" insert="true" column="name" />
<property name="address" type="string" update="true" insert="true" column="address" />
</class>
</hibernate-mapping>
聽
紼嶅井瑙i噴涓涓?<class name="hibernate.Hello_Bean" table="test_hibernate" >閲岀殑name鎸囦綘鐨勭敓鎴愯〃鐨勭被錛?/p>
table鍒欐寚瀹氫綘瑕佸垱寤虹殑鏁版嵁搴撹〃鐨勫悕瀛楋紝鍙互鑷敱淇敼錛屾病鏈夊獎鍝?
<id name="id" column="id">璁劇疆涓婚敭ID錛岃繖閲宯ame鐨勫糹d璺烪ello_Bean.java閲岀殑鏂規硶getId涓巗etId瀵瑰簲錛屼笉鐢ㄧ榪欎釜,hibernate浼氳嚜鍔ㄨ皟鐢紝閰嶇疆濂藉氨鍙互浜嗭紝column鐨勫間負瑕佺敓鎴愮殑瀛楁鍚嶏紝鍙互鑷敱淇敼錛屾病鏈夊獎鍝嶃?/p>
<generator class="identity"/>灞炴ц涓婚敭鐨処D鑷錛堟彃鍏ユ暟鎹殑鏃跺欒嚜鍔ㄥ姞1錛?/p>
<property name="name" type="string" update="true" insert="true" column="name" />榪欓噷鐨刵ame鍊?name"璺烪ello_Bean.java閲岀殑getName鏂規硶瀵瑰簲錛宑olumn涓鴻鐢熸垚鐨勫瓧孌靛悕
<property name="address" type="string" update="true" insert="true" column="address" />
鍒嗗埆娣誨姞涓涓瓧孌祅ame涓巃ddress錛屾敞鎰忚繖閲岀殑type灞炴х被鍨嬩負string,濡傛灉榪欓噷鐨勭被鍨嬩笌Hello_Bean.java閲岃緗殑綾誨瀷涓嶄竴鏍蜂細鍑洪敊銆?/p>
淇敼瀹屼互鍚庝繚瀛樸?/p>
鏈鍚庡湪JB閲屾柊寤轟竴涓被錛屽悕瀛椾負Hello.java錛屾垜浼氫竴姝ユ瑙i噴錛屼唬鐮佸涓嬶細
package hibernate;
import net.sf.hibernate.cfg.Configuration;
import net.sf.hibernate.SessionFactory;
import net.sf.hibernate.tool.hbm2ddl.SchemaExport;
import net.sf.hibernate.Session;
import net.sf.hibernate.Query;
import net.sf.hibernate.Hibernate;
import net.sf.hibernate.type.LongType;
import net.sf.hibernate.Transaction;
import net.sf.hibernate.ScrollableResults;
import java.util.*;
public class Hello {
public Hello() {
}
public static void main(String[] args) throws Exception {
Configuration cfg = new Configuration().addClass(Hello_Bean.class);//鐢℉ello_Bean.class綾誨垵濮嬪寲
SessionFactory sessions = cfg.buildSessionFactory();//鐢╞uildSessionFactory鏂規硶寰楀埌涓涓猄essionFactory瀵硅薄
Session session = sessions.openSession();//鍐嶇敤SessionFactory鐨刼penSession鏂規硶寰楀埌涓涓猻ession
new SchemaExport(cfg).create(true, true);//榪欏彞鎰忔濇槸鍒涘緩琛紝絎竴嬈¤繍琛屼互鍚庯紝灝辨槸鍒涘緩瀹岃〃浠ュ悗鍐嶆妸榪欒鍔犱笂娉ㄩ噴銆傚鏋滃緩琛ㄤ互鍚庝笉鎶婅繖涓鍙ユ敞閲婃帀鐨勮瘽浼氬垹鎺変互鍓嶅垱寤虹殑琛ㄥ啀閲嶆柊寤轟竴涓?/p>
Hello_Bean my_hibernate = new Hello_Bean();//寰楀埌涓涓狧ello_Bean瀵硅薄
my_hibernate.setName("my_name");//璁劇疆Hello_Bean瀵硅薄鐨刵ame鍊間負my_name,榪欓噷鍏跺疄灝辨槸璇存妸瀛楃涓瞞y_name褰撲綔鏁版嵁搴撳瓧孌祅ame鐨勫?鏁版嵁搴撳瓧孌祅ame涓嶩ello_Bean綾婚噷鐨刧etName,setName鏂規硶鏄搴旂殑銆傚艦鎴愪竴涓槧灝勫叧緋匯?/p>
my_hibernate.setAddress("my_address");//濡備笂
session.save(my_hibernate);//榪欏彞寰堥噸瑕侊紝灝唌y_hibernate瀵硅薄鍐欒繘鏁版嵁搴擄紙my_hibernate瀵硅薄閲岀殑name涓巃ddress鎴戜滑鍒氬垰宸茬粡璁劇疆浜嗗間簡錛屼細鐩存帴鎶妌ame,address鐨勫煎啓榪涙暟鎹簱鍘伙級
session.flush();
session.close();
//涓婇潰鏄竴涓畝鍗曠殑鎻掑叆鏁版嵁涓庣涓嬈¤繍琛屽緩琛ㄧ殑浠嬬粛錛屼笅闈㈡垜鍐嶄粙緇嶅垹闄や笌淇敼鐨勬柟娉?涓嬮潰鐨勪唬鐮佹垜
//閮藉姞浜嗘敞閲婏紝鑷繁闇瑕佷粈涔堟柟娉曪紙鍒犻櫎錛屼慨鏀癸紝寰幆鏁版嵁搴撶殑鍊鹼級灝辨妸娉ㄩ噴鍘繪帀灝卞彲浠ヤ簡
聽聽聽聽聽聽聽 HSQL姣旇緝綆鍗曪紝澶у鐪嬩竴涓嬩緥瀛愬氨搴旇鏄庣櫧浜嗭紝榪欓噷灝變笉璁蹭簡銆?br />聽聽聽聽聽聽聽 閬嶅巻鏁版嵁搴撶殑鏂規硶鏈変笁縐嶏紝鍒嗗埆鏄疩uery,find,iterate錛孮uery鍜宖ind榪斿洖涓涓狶ist鎺ュ彛錛宨terate榪斿洖涓涓狪terator錛屽叿浣撴柟娉曞彲浠ユ煡鐪嬭繖浜涚被寰楃煡銆?/p>
//鍒犻櫎鏁版嵁
/*
int a=session.delete("from Hello_Bean where id=1");//濡傛灉娌℃湁鎵懼埌id涓?鐨勬暟鎹偅涔堣繑鍥?錛屽鏋滄壘鍒拌繑鍥?,榪?br />//閲岀殑Hello_Bean鏄垜浠殑Hello_Bean綾伙紝浠栬窡鏁版嵁搴撹〃瀵瑰簲錛屾墍浠ユ垜浠湪榪欓噷鏄洿鎺ョ敤Hello_Bean鏉ヤ唬鐮?br />//鏁版嵁搴撹〃鐨勩?br />System.out.println(a);
session.flush();
session.close();
*/
//Query鏂規硶鏌ヨ鏁版嵁
/*
Hello_Bean my_hibernate = null;
Query q = session.createQuery("from Hello_Bean");
// Query q = session.createQuery("from Hello_Bean where name=?");//榪欓噷鐨?璺烰DBC鐨凱reparedStatement鏂規硶鐨?br />//宸笉澶氾紝鍙笉榪囪繖閲岀殑鏄互0寮濮嬶紝jdbc鐨勬槸1寮濮嬨?br />// q.setString(0,"my_name");
// q.setFirstResult(0);//榪欏彞璇濈殑鎰忔濇槸璇存煡璇㈢粨鏋滀粠絎嚑琛屽紑濮嬪垪鍑烘暟鎹?br />// q.setMaxResults(3);//榪欏彞璇濈殑鎰忔濇槸鍙栧灝戞潯鏁版嵁錛屽氨璺烻QL SERVER鐨凾OP鏂規硶鍜孧YSQL鐨凩IMIT鏂?br />//娉曚竴鏍風殑鎰忔濄?br />// ScrollableResults sc=q.scroll();//寰楀埌涓涓猄crollableResults,鍙粴鍔ㄧ殑錛屽鏋滀綘鐨勬暟鎹簱鏀寔娓告爣鑷敱縐誨姩鐨?br />//璇濆彲浠ュ姞涓婏紝涔熷氨鏄鍙互鍒ゆ柇鏌ヨ緇撴灉鏈夋病鏈夊鹼紝鎴栬呯Щ鍔ㄥ埌涓嬩竴琛岃褰曠瓑絳夈?br />// if(!sc.next())
// {
// System.out.println("娌℃湁鎵懼埌浣犻渶瑕佺殑鏁版嵁");
// }
session.flush();//濡傛灉浣跨敤浜哠crollableResults鐨勮瘽璇鋒妸榪欒娉ㄩ噴鎺?br />session.close();//濡傛灉浣跨敤浜哠crollableResults鐨勮瘽璇鋒妸榪欒娉ㄩ噴鎺?br />List l=q.list();//榪斿洖涓涓狶ist鎺ュ彛錛岀敤鏉ラ亶鍘嗙粨鏋滈泦
for(int i=0;i<l.size();i++){
my_hibernate = (Hello_Bean) l.get(i);//浠嶭ist涓彇寰椾竴涓猰y_hibernate瀵硅薄
System.out.println(my_hibernate.getName());//璋冪敤my_hibernate瀵硅薄鐨刧etName鏂規硶鍙栧緱鏁版嵁搴搉ame瀛楁鐨勫?br />}
*/
//find鏂規硶鏌ヨ鏁版嵁
/*
Hello_Bean my_hibernate = null;
List q = session.find("from Hello_Bean");
session.flush();
session.close();
for(int i=0;i<q.size();i++)
{
my_hibernate = (Hello_Bean) q.get(i);
System.out.println(my_hibernate.getName());
}
*/
//iterate鏂規硶鏌ヨ鏁版嵁
/*
Hello_Bean my_hibernate = null;
Iterator q = session.iterate("from Hello_Bean");
while(q.hasNext())
{
my_hibernate = (Hello_Bean) q.next();
System.out.println(my_hibernate.getName());
}
*/
//淇敼鏁版嵁
/*
Query qq=session.createQuery("from Hello_Bean");
Hello_Bean my_hibernate=(Hello_Bean)session.load(Hello_Bean.class,new Integer(2));
//榪欓噷鐨刵ew Integer(2)鎰忔濇槸淇敼琛ㄤ腑id涓?鐨勯偅涓琛屾暟鎹?蹇呴』鏄竴涓寘瑁呯被鐨勫璞★紝濡傛灉浣跨敤int鐨勮瘽浼氬嚭閿欍?br />my_hibernate.setName("geezer");//鎶奿d涓?鐨勯偅涓琛屾暟鎹殑name瀛楁鍊兼敼涓?geezer"
session.flush();
session.close();
*/
}
}
鏈鍚庤繍琛屽氨鍙互浜嗐?/p>
濡傛灉澶у鏈変粈涔堜笉娓呮鐨勶紝鍙互涓嬭澆榪欑瘒鏂囩珷鐨勪緥瀛愮湅鐪嬶紝榪愯涓涓嬨?/p>
涓嬭澆瀹屼互鍚庣敤JB鎵撳紑hibernate.jpx灝卞彲浠ヤ簡銆傜敤涔嬪墠鎶奾ibernate鍜孧YSQL鐨勯┍鍔ㄥ姞榪涘幓錛屾柟娉曞鏋滀笉鐭ラ亾鍐嶇湅鐪嬫湰绔犲紑澶撮儴鍒嗐?/p>
甯歌閿欒錛?br />Caused by: org.dom4j.DocumentException: Invalid byte 2 of 2-byte UTF-8 sequence. Nested exception: Invalid byte 2 of 2-byte UTF-8 sequence.
濡傛灉鍑虹幇榪欒閿欒璇存槑浣犵殑xml閰嶇疆鏂囦歡鏈変笉瑙勮寖鐨勫瓧絎︼紝媯鏌ヤ笅銆?/p>
net.sf.hibernate.MappingException: Error reading resource: hibernate/Hello_Bean.hbm.xml
濡傛灉鍑虹幇榪欒閿欒璇存槑浣犵殑hibernate鐨刋ML閰嶇疆鏂囦歡鏈夐敊
net.sf.hibernate.MappingException: Resource: hibernate/Hello_Bean.hbm.xml not found
濡傛灉鍑虹幇榪欒閿欒璇存槑hibernate鐨刋ML閰嶇疆鏂囦歡娌℃湁鎵懼埌錛屼綘搴旇鎶奨ML鏂囦歡鏀懼湪涓庝綘鐨勭被鏂囦歡鍚屼釜鐩綍涓?鏈枃涓槸鏀懼湪hibernate\classes\hibernate\鐩綍涓嬶紝涔熷氨鏄窡Hello_Bean.class綾繪枃浠朵竴璧楓?/p>
net.sf.hibernate.PropertyNotFoundException: Could not find a setter for property name in class hibernate.Hello_Bean
濡傛灉鍑虹幇榪欒閿欒璇存槑浣犵殑xml鏂囦歡閲岃緗殑瀛楁鍚峮ame鐨勫間笌Hello_Bean.java綾婚噷鐨刧etXXX鎴杝etXXX鏂規硶涓嶄竴鑷淬?/p>
net.sf.hibernate.HibernateException: JDBC Driver class not found: org.gjt.mm.mysql.Driver
濡傛灉鍑虹幇榪欒閿欒璇存槑浣犵殑MYSQL椹卞姩娌℃湁鍔犺繘JB搴撻噷鎴栬呬笉鍦–LASSPATH閲屻?/p>