Hibernate鍜孞DBC銆丒JB姣旇緝

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hibernate鍜孞DBC銆丒JB姣旇緝相关的知识,希望对你有一定的参考价值。

鏍囩锛?/p>

鍙傝€?http://m.blog.csdn.net/article/details?id=7228061

 涓€銆丠ibernate鏄疛DBC鐨勮交閲忕骇鐨勫璞″皝瑁咃紝瀹冩槸涓€涓嫭绔嬬殑瀵硅薄鎸佷箙灞傛鏋讹紝鍜孉pp Server锛屽拰EJB娌℃湁浠€涔堝繀鐒剁殑鑱旂郴銆侶ibernate鍙互鐢ㄥ湪浠讳綍JDBC鍙互浣跨敤鐨勫満鍚堬紝渚嬪Java搴旂敤绋嬪簭鐨勬暟鎹簱璁块棶浠g爜锛孌AO鎺ュ彛鐨勫疄鐜扮被锛岀敋鑷冲彲浠ユ槸BMP閲岄潰鐨勮闂暟鎹簱鐨勪唬鐮併€備粠杩欎釜鎰忎箟涓婃潵璇达紝Hibernate鍜孍B涓嶆槸涓€涓寖鐣寸殑涓滆タ锛屼篃涓嶅瓨鍦ㄩ潪姝ゅ嵆褰肩殑鍏崇郴銆?nbsp;

浜屻€丠ibernate鏄竴涓拰JDBC瀵嗗垏鍏宠仈鐨勬鏋讹紝鎵€浠ibernate鐨勫吋瀹规€у拰JDBC椹卞姩锛屽拰鏁版嵁搴撻兘鏈変竴瀹氱殑鍏崇郴锛屼絾鏄拰浣跨敤瀹冪殑Java绋嬪簭锛屽拰App Server娌℃湁浠讳綍鍏崇郴锛屼篃涓嶅瓨鍦ㄥ吋瀹规€ч棶棰樸€?nbsp;

涓夈€丠ibernate涓嶈兘鐢ㄦ潵鐩存帴鍜孍ntity Bean鍋氬姣旓紝鍙湁鏀惧湪鏁翠釜J2EE椤圭洰鐨勬鏋朵腑鎵嶈兘姣旇緝銆傚苟涓斿嵆浣挎槸鏀惧湪杞欢鏁翠綋妗嗘灦涓潵鐪嬶紝Hibernate涔熸槸鍋氫负JDBC鐨勬浛浠h€呭嚭鐜扮殑锛岃€屼笉鏄疎ntity Bean鐨勬浛浠h€呭嚭鐜扮殑锛岃鎴戝啀鍒椾竴娆℃垜宸茬粡鍒梟娆$殑妗嗘灦缁撴瀯锛?nbsp;

浼犵粺鐨勬灦鏋勶細 
1) Session Bean <-> Entity Bean <-> DB 
涓轰簡瑙e喅鎬ц兘闅滅鐨勬浛浠f灦鏋勶細 
2) Session Bean <-> DAO <-> JDBC <-> DB 
浣跨敤Hibernate鏉ユ彁楂樹笂闈㈡灦鏋勭殑寮€鍙戞晥鐜囩殑鏋舵瀯锛?nbsp;
3) Session Bean <-> DAO <-> Hibernate <-> DB 

灏变笂闈?涓灦鏋勬潵鍒嗘瀽锛?nbsp;
1銆佸唴瀛樻秷鑰楋細閲囩敤JDBC鐨勬灦鏋?鏃犵枒鏄渶鐪佸唴瀛樼殑锛孒ibernate鐨勬灦鏋?娆′箣锛孍B鐨勬灦鏋?鏈€宸€?nbsp;

2銆佽繍琛屾晥鐜囷細濡傛灉JDBC鐨勪唬鐮佸啓鐨勯潪甯镐紭鍖栵紝閭d箞JDBC鏋舵瀯杩愯鏁堢巼鏈€楂橈紝浣嗘槸瀹為檯椤圭洰涓紝杩欎竴鐐瑰嚑涔庡仛涓嶅埌锛岃繖闇€瑕佺▼搴忓憳闈炲父绮鹃€欽DBC锛岃繍鐢˙atch璇彞锛岃皟鏁碢reapredStatement鐨凚atch Size鍜孎etch Size绛夊弬鏁帮紝浠ュ強鍦ㄥ繀瑕佺殑鎯呭喌涓嬮噰鐢ㄧ粨鏋滈泦cache绛夌瓑銆傝€屼竴鑸儏鍐典笅绋嬪簭鍛樻槸鍋氫笉鍒拌繖涓€鐐圭殑銆傚洜姝ibernate鏋舵瀯琛ㄧ幇鍑烘渶蹇殑杩愯鏁堢巼銆侲B鐨勬灦鏋勬晥鐜囦細宸殑寰堣繙銆?nbsp;

3銆佸紑鍙戞晥鐜囷細鍦ㄦ湁JBuilder鐨勬敮鎸佷笅浠ュ強绠€鍗曠殑椤圭洰锛孍B鏋舵瀯寮€鍙戞晥鐜囨渶楂橈紝JDBC娆′箣锛孒ibernate鏈€宸€備絾鏄湪澶х殑椤圭洰锛岀壒鍒槸鎸佷箙灞傚叧绯绘槧灏勫緢澶嶆潅鐨勬儏鍐典笅锛孒ibernate鏁堢巼楂樼殑鎯婁汉锛孞DBC娆′箣锛岃€孍B鏋舵瀯寰堝彲鑳戒細澶辫触銆?nbsp;

4銆佸垎甯冨紡锛屽畨鍏ㄦ鏌ワ紝闆嗙兢锛岃礋杞藉潎琛$殑鏀寔 
鐢变簬鏈塖B鍋氫负Facade锛?涓灦鏋勬病鏈夊尯鍒€?nbsp;

鍥涖€丒B鍜孒ibernate瀛︿範闅惧害鍦ㄥ摢閲岋紵 

EB鐨勯毦搴﹀湪鍝噷锛熶笉鍦ㄥ鏉傜殑XML閰嶇疆鏂囦欢涓婏紝鑰屽湪浜嶦B杩愮敤绋嶅井涓嶆厧锛屽氨鏈変弗閲嶇殑鎬ц兘闅滅銆傛墍浠ラ毦鍦ㄤ綘闇€瑕佸涔犲緢澶欵JB璁捐妯″紡鏉ラ伩寮€鎬ц兘闂锛岄渶瑕佸涔燗pp Server鍜孍B鐨勯厤缃潵浼樺寲EB鐨勮繍琛屾晥鐜囥€傚仛EB鐨勫紑鍙戝伐浣滐紝绋嬪簭鍛樼殑澶ч儴鍒嗙簿鍔涢兘琚斁鍒颁簡EB鐨勬€ц兘闂涓婁簡锛屽弽鑰屾病鏈夋洿澶氱殑绮惧姏鍏虫敞鏈韩灏变富瑕佹姇鍏ョ簿鍔涘幓鑰冭檻鐨勫璞℃寔涔呭眰鐨勮璁′笂鏉ャ€?nbsp;

Hibernate闅惧湪鍝噷锛熶笉鍦℉ibernate鏈韩鐨勫鏉傦紝瀹為檯涓奌ibernate闈炲父鐨勭畝鍗曪紝闅惧湪Hibernate澶伒娲讳簡銆?nbsp;

褰撲綘鐢‥B鏉ュ疄鐜版寔涔呭眰鐨勬椂鍊欙紝浣犱細鍙戠幇EB瀹炲湪鏄お绗ㄦ嫏浜嗭紝绗ㄦ嫏鍒颁綘鏍规湰娌℃湁浠€涔堝彲浠ラ€夋嫨鐨勪綑鍦帮紝鎵€浠ヤ綘鏍规湰灏变笉鐢ㄨ姳璐圭簿鍔涘幓璁捐鏂规锛屽幓骞宠 鏂规鐨勫ソ鍧忥紝鍘昏垂鑴戠瓔鑰冭檻閫夋嫨鍝釜鏂规锛屽洜涓哄彧鏈夊敮涓€鐨勬柟妗堟憜鍦ㄤ綘闈㈠墠锛屼綘鍙兘杩欎箞鍋氾紝娌″緱閫夋嫨銆?nbsp;

Hibernate鐩稿弽锛屽畠澶伒娲讳簡锛岀浉鍚岀殑闂锛屼綘鑷冲皯鍙互璁捐鍑哄崄鍑犵鏂规鏉ヨВ鍐筹紝鎵€浠ョ壒鍒殑鐘毦锛岀┒绔熺敤杩欎釜锛岃繕鏄敤閭d釜鍛紵杩欎簺鏂规涔嬮棿鍒板簳鏈変粈涔堝尯鍒憿锛熶粬浠殑杩愯鍘熺悊鏈変粈涔堜笉鍚岋紵杩愯鏁堢巼鍝釜姣旇緝濂斤紵鍏夋槸涓婚敭鐢熸垚锛屽氨鏈変竷鍏鏂规渚涗綘閫夋嫨锛屼綘涓洪毦涓嶄负闅撅紵闆嗗悎灞炴€у彲浠ョ敤Set锛屽彲浠ョ敤List锛岃繕鍙互鐢˙ag锛屽埌搴曞摢涓晥鐜囬珮锛屼綘涓洪毦涓嶄负闅撅紵鏌ヨ鍙互鐢╥terator锛屽彲浠ョ敤list锛屽摢涓ソ锛屾湁浠€涔堝尯鍒紵浣犱负闅句笉涓洪毦锛熷鍚堜富閿綘鍙互鐩存帴鍦╤bm閲岄潰閰嶇疆锛屼篃鍙互鑷畾涔塁ustomerType锛屽摢绉嶆瘮杈冨ソ浜涳紵浣犱负闅句笉涓洪毦锛熷浜庝竴涓〃锛屼綘鍙互閫夋嫨鍗曚竴鏄犲皠涓€涓璞★紝涔熷彲浠ユ槧灏勬垚鐖跺瓙瀵硅薄锛岃繕鍙互鏄犲皠鎴愪袱涓?:1鐨勫璞★紝鍦ㄤ粈涔堟儏鍐典笅鐢ㄥ摢绉嶆柟妗堟瘮杈冨ソ锛屼綘涓洪毦涓嶄负闅撅紵 

杩欎釜鍒楄〃鍙互涓€鐩村紑鍒椾笅鍘伙紝鐩村埌浣犱笉鎯冲啀鐪嬩笅鍘讳负姝€傚綋浣犻潰鍓嶆憜鐫€鏃犳暟鐨勭溂鑺辩辑涔辩殑鏂规鐨勬椂鍊欙紝浣犱細瑙夊緱骞哥鍛紵杩樻槸鎮插搥鍛紵濡傛灉浣犳槸涓€涓礋璐g殑绋嬪簭鍛橈紝閭d箞浣犱竴瀹氫細浠旂粏鐮旂┒姣忕鏂规鐨勫尯鍒紝姣忕鏂规鐨勬晥鐜囷紝姣忕鏂规鐨勯€傜敤鍦哄悎锛屼綘浼氳寰椾綘宸茬粡闄峰叆杩涘幓鎷斾笉鍑烘潵浜嗐€傚鏋滄槸鐢‥B锛屼綘绗竴绉掔灏卞凡缁忓仛鍑轰簡鍐冲畾锛屾牴鏈病寰楅€夋嫨锛屾瘮濡傝闆嗗悎灞炴€э紝浣犲彧鑳界敤Collection锛屽鏋滄槸Hibernate锛屼綘浼氬湪Bag锛孡ist鍜孲et涔嬮棿鏉ュ洖鐘硅鲍涓嶅喅锛岀敋鑷虫悶涓嶆竻妤氱殑璇濓紝绋嬪簭閮芥病鏈夊姙娉曞啓銆?/p>

 

 

甯哥敤鐨勬暟鎹簱鎿嶄綔鍖呮嫭锛欽DBC銆丒JB銆丣DO浠ュ強Hibernate銆傚畠鐨勫悇鏈変紭缂虹偣锛?nbsp;

   (1) JDBC锛氬鏁癑ava寮€鍙戜汉鍛樻槸鐢↗DBC鏉ュ拰鏁版嵁搴撹繘琛岄€氫俊锛屽畠鍙互閫氳繃DAO妯″紡杩涜鏀瑰杽鍜屾彁楂樸€備絾杩欑鏂瑰紡鍦ㄥぇ鍨嬪簲鐢ㄧ▼搴忎腑涓嶅鏄撴搷浣滀娇鐢紝涓旂淮鎶よ捣鏉ョ浉褰撳洶闅俱€?nbsp;

   (2) EJB锛欵JB閫氬父鏄湪鏁版嵁鎸佷箙鎶€鏈笂鐨勭浜屼釜閫夋嫨锛屽畠鏄€氳繃entitybeans鏉ュ鏁版嵁杩涜鎸佷箙鍖栥€傞鍏堝氨闇€瑕佽喘涔颁竴涓环浣嶅悎鐞嗙殑EJB瀹瑰櫒涓€J2EE搴旂敤鏈嶅姟鍣紝涔熷彲浠ラ噰鐢ㄥ紑婧愰」鐩殑鍏嶈垂EJB瀹瑰櫒锛屾瘮濡侸BOSS銆備絾鏄緢澶氬晢涓欵JB瀹瑰櫒鐨勬€ц兘鍜屾妧鏈敮鎸佷笉澶ソ锛屽湪EJB涓疄鐜癑DBC涔熸瘮杈冨鏉傘€?nbsp;

   (3) JDO锛欽DO鐨勫嚭鐜颁技涔庢湁浜嗕竴浜涙敼瑙傦紝浣嗘槸锛孞DO娌℃湁涓€涓ソ鐨勫紑婧愬厤璐瑰疄鐜般€傚ソ鐨勪骇鍝侀儴鏄晢涓氫骇鍝侊紝骞朵笖鍦ㄥ浗鍐呮病鏈夐攢鍞拰鎶€鏈敮鎸併€侸DO涔熶笉鏄竴涓交閲忕骇灏佽锛庡畠寤虹珛鐨勬寔涔呭眰妗嗘灦锛屽緢涓嶅畬鍠勩€傚啀鍔犱笂JDO鐨勬爣鍑嗚繕寰堜笉瀹屽杽浠ュ強涓ラ噸鐨勪骇鍝佸垎瑁傞棶棰橈紝浣垮緱寰堝鎿嶄綔鏂瑰紡寰堟槸鐑︾悙銆?nbsp;

   (4) Hibernate锛欻ibernate杩欑鎸佷箙妗嗘灦鍦ㄦ煇浜涙柟闈㈡湁寰堝ぇ鐨勪笉鍚岋紝瀹冧笉闇€瑕佷换浣曞鍣紝鎻愪緵绠€鍗曟槗鐢ㄧ殑API锛屼篃瑙e喅浜咼DO鐨勫緢澶氱己闄枫€備綔涓轰竴涓壇濂界殑ORM 锛屽畠鏈夊涓嬬壒鐐癸細 

閫忔槑鍦版彁渚涘璞′笌鍏崇郴鏁版嵁搴撶殑鏄犲皠锛屼互缁熶竴鐨勬帴鍙f柟寮忔敮鎸佸绉嶆暟鎹簱銆?nbsp;

缂撳瓨鏈哄埗锛屽鏉傜殑缂撳瓨鏈哄埗鍜岄攣瀹氱瓥鐣ワ紝浣块拡瀵规暟鎹簱鎿嶄綔澶уぇ鍑忓皯銆?nbsp;

寮€婧愬厤璐圭殑License锛屽彲浠ュ湪闇€瑕佺殑鏃跺€欑爺绌舵簮浠g爜锛屾敼鍐欐簮浠g爜锛岃繘琛屽姛鑳界殑瀹氬埗銆?nbsp;

杞婚噺绾у皝瑁咃紝閬垮厤寮曞叆杩囧澶嶆潅鐨勯棶棰橈紝瀹规槗璋冭瘯锛屽噺杞荤▼搴忓憳鐨勮礋鎷呫€?nbsp;

鍏锋湁鍙墿灞曟€э紝API寮€鏀撅紝褰撴湰韬姛鑳戒笉澶熺敤鐨勬椂鍊欙紝鍙互鑷缂栫爜鎵╁睍銆?nbsp;

寮€鍙戣€呮椿璺冿紝浜у搧鏈夌ǔ瀹氱殑鍙戝睍淇濋殰銆?/span>

以上是关于Hibernate鍜孞DBC銆丒JB姣旇緝的主要内容,如果未能解决你的问题,请参考以下文章

鎺掑簭绠楁硶绯诲垪1-鍐掓场鎺掑簭

缁忓吀鎺掑簭绠楁硶鈥斺€旈€夋嫨鎺掑簭

澶栬妯″紡

websphere启动报/WEB-INF/applicationContext-orm- hibernate.xml]: Could not resolve placeholder 'hibe

C Const