2 緇ф壙鏄犲皠錛氱埗綾諱笌瀛愮被
脳 姣忎釜瀵硅薄涓€寮犺〃錛屽悇鑷崟鐙槧灝勩€傝繖鏍鋒槧灝勬柟渚匡紝浣嗘槸鏈夐噸澶嶆暟鎹紝涓嶈兘澶氭€佹搷浣溿€?br />脳 鎵€鏈夊璞′竴寮犺〃錛屾湁涓瓧孌典笓闂ㄧ敤浜庡尯鍒璞★紱
脳 姣忎釜瀵硅薄涓€寮犺〃錛屽叡浜富閿紝闄や富閿娌℃湁閲嶅鏁版嵁錛屽瓙綾誨睘鎬ч€氳繃鐖剁被鎵╁睍鏌ヨ銆?/p>
3 闆嗗悎鏄犲皠錛氫富瑕佹槸鎻愪緵榪欏嚑縐嶆柟寮忎笅Hibernate濡備綍澶勭悊錛岄兘鏄璞′腑宓屽叆瀵硅薄銆?br />脳 Component鏄犲皠銆丼et鏄犲皠銆丩ist鏄犲皠銆丮ap鏄犲皠
脳 Set涓嶮ap鎺掑簭錛氬彲浠ヤ嬌鐢↗ava鎺掑簭錛屼篃鍙互浣跨敤DB鎺掑簭銆?br />脳 Component涓泦鍚堟槧灝勶細灝辨槸瀵硅薄涓湁闆嗗悎錛岄泦鍚堜腑鍐嶅瓨鍌ㄥ璞°€?br />脳 Hibernate瀵硅薄鐨勪笁縐嶇姸鎬侊細鏆傚瓨錛圱ransient錛夈€佹寔涔咃紙Persistent錛夈€佸垎紱伙紙Detached錛?br />聽鍦↗ava涓嬌鐢╪ew鍒涢€犵殑瀵硅薄錛屽氨鏄殏瀛樼殑錛屄犳殏瀛樺璞℃墽琛宻ave()鎴杝aveOrUpdate()灝辨槸鎸佷箙鐨勶紱
聽鎸佷箙瀵硅薄鎬繪槸涓巗ession鍜宼ransaction鐩稿叧鑱旓紝鎸佷箙瀵硅薄鎵цdelete()灝變細鍥炲埌鏆傚瓨鐨勶紱
聽褰搒ession鎵цclose(), clear(), evict()涔嬪悗錛屽璞″氨浼氬彉鎴愬垎紱葷殑銆?br />聽鍒嗙瀵硅薄鎷ユ湁id錛屾墽琛寀pdate(), saveOrUpdate(), lock()涔嬪悗錛屽璞″氨浼氶噸鏂板彉鎴愭寔涔呯殑銆?br />脳 瀵硅薄鐨勬瘮杈冦€?=, equals(), hashCode()
4 瀹炰綋鏄犲皠錛氾紙绔犺妭璁捐鏄惁鏈夐棶棰樸€傚洜涓烘槧灝勫氨鏄洓縐嶏細涓€瀵逛竴銆佷竴瀵瑰銆佸瀵逛竴銆佸瀵瑰銆傚叾浠栭噸瑕佸姛鑳斤細鎸佷箙鍖栥€佺€戝竷鎸佷箙鍖栥€佸弻鍚戝叧鑱斾笌inverse璁懼畾銆傦級
脳 澶氬涓€鏄犲皠聽脳 涓€瀵瑰鏄犲皠聽脳 涓€瀵逛竴鏄犲皠聽脳 澶氬澶氭槧灝?br />脳 Cascade Persistent/鐎戝竷鎸佷箙鍖栵細鐖剁被鎸佷箙鍖栧悗錛屽瓙綾誨簲鑷姩鎸佷箙鍖栥€?br />聽Persistence of Reachability錛忓彲杈炬€ф寔涔呭寲
脳 鍙屽悜鍏寵仈涓巌nverse璁懼畾錛岃繖涓槸鎺ョ潃Cascade Persistence鏉ヨ鏄庣殑銆備笌澶氬涓€鏄犲皠鍜屼竴瀵瑰鏄犲皠鐨勫尯鍒槸鍙互鑷姩鏇存柊瀛愮被銆?br />脳 寤惰繜鍒濆錛圠azy Initialization錛夈€傜湡姝i渶瑕佹椂鎵嶅悜鏁版嵁搴撶儲鍙栨暟鎹€備絾鏄湪澶勭悊鍔犺澆鐨勪唬鐮佷腑闂翠笉鑳藉叧闂璖ession錛屽惁鍒欏彂鐢烲azyInitializationException銆?/p>
5 Session 涓?Criteria
脳 Session綆$悊錛?br />聽Session鏄疕ibernate鐨勬牳蹇冿紝璐熻矗瀵硅薄鐨勭敓鍛藉懆鏈熴€佷簨鍔$鐞嗐€佹暟鎹簱瀛樺彇銆?br />聽Session鐢盨essionFactory鍒涘緩錛孲essionFactory鏄嚎紼嬫渚嬬殑錛屼絾鏄疭ession涓嶆槸錛屽洜姝や笉鑳藉叡鐢ㄣ€?br />聽涓轟簡鎻愰珮浣跨敤鏁堢巼錛屾彁渚涗簡涓€涓叡鐢⊿ession鐨勪緥瀛愶紝閲囩敤ThreadLocal瀹炵幇渚涘弬鑰冦€?br />脳 Criteria鏌ヨ錛?br />聽鍙互涓嶄嬌鐢⊿QL鎴栬€匟QL錛岃€岄噰鐢ㄥ畬鍏ㄥ熀浜嶫ava鐨勮娉曢鏍兼潵榪涜鏁版嵁鏌ヨ錛?br />聽浣嗘槸錛孋riteria鐜板湪鍙兘鎻愪緵璁稿鍩烘湰鐨勫姛鑳姐€?br />6 浜嬪姟綆$悊
脳 浜嬪姟綆$悊錛?br />聽JDBC浜嬪姟銆傜敤Connection綆$悊浜嬪姟錛孒ibernate瀵笿DBC浜嬪姟鍋氫簡綆€鍗曞皝瑁呫€?br />聽JTA浜嬪姟銆備嬌鐢↗TA瀹瑰櫒鏉ョ鐞嗕簨鍔★紝涓嶴ession鏃犲叧銆?/p>
脳 鎮茶閿佸畾錛圥essimistic Locking錛夛細渚濊禆緋葷粺鎴栬€呮暟鎹簱鏈韓鐨勬満鍒跺畬鎴愩€?/p>
脳 涔愯閿佸畾錛圤ptimistic Locking錛夛細鐢盚ibernate瀹屾垚錛屽茍涓斾負Hibernate鎺ㄨ崘鏂瑰紡錛屽鍔犱簡VERSION鍒椼€?/p>
7 鐩稿叧宸ュ叿
脳 SchemaExportTask錛氫粠鏄犲皠鏂囦歡寤虹珛鏁版嵁搴撹〃
脳 Hbm2JavaTask錛氫粠鏄犲皠鏂囦歡寤虹珛Java Bean綾匯€?br />
2. Struts Tag
2.1 Struts Html Tag蹇€熷弬鑰冿細<html:html/>, <html:base/>, <html:link/>, <html:img/>, <html:errors/>, <html:messages/>, <html:button/>, <html:form/>, <html:submit/>, <html:reset/>, <html:cancel/>, <html:text/>, <html:password/>, <html:hidden/>, <html:textarea/>, <html:radio/>, <html:checkbox/>, <html:multibox/>, <html:select/>, <html:option/>, <html:image/>
2.2. Strtus Bean Tag蹇€熷弬鑰冿細<bean:cookie/>銆?lt;bean:header/>銆?lt;bean:parameter/>, <bean:page/>, <bean:define/>, <bean:include/>, <bean:message/> <bean:resource/>, <bean:write/>, <bean:struts/>
2.3. Struts Logic Tag蹇€熷弬鑰冿細 <logic:equal/>銆?lt;logic:notEqual/> <logic:greatEqual/>銆?lt;logic:greatThan/> <logic:lessEqual/>銆?lt;logic:lessThan/> <logic:match/>銆?lt;logic:notMatch/> <logic:present/>銆?lt;logic:notPresent/>
3. Validator鏁村悎
3.1. Validator綆€浠嬶細鍑忓皯validator()鍑芥暟鐨勬挵鍐欙紝浠ュ強浠g爜緇戝畾銆?br />闇€瑕乧ommons-validator.jar鍜宩akarta-oro.jar涓や釜綾誨簱銆?br />浠lug-in鐨勬柟寮忔墿灞昐truts鍔熻兘錛屽洜姝ゅ繀欏誨湪struts-config.xml涓畾涔夈€?br />3.2. 瀹㈡埛绔獙璇?br />3.3. 鏈嶅姟鍣ㄩ獙璇?br />3.4. 閰嶇疆鏂囦歡綆$悊
3.5. 鍐呭緩楠岃瘉鍣?br />3.6. 鑷畾涔夐獙璇佸櫒
4. Tiles鏁村悎
4.1. Tiles綆€浠嬶細鏄疶emplate Engine錛屽彲浠ヤ嬌緗戦〉甯冨眬錛圠ayout錛夋爣絳句笌鍐呭鍒嗙錛屾彁渚涚増闈㈡帶鍒舵満鍒躲€?br />闇€瑕乧ommons-beanutils.jar銆乧ommons-logging.jar銆乧ommons-collections.jar銆乧ommons-digester.jar銆乻truts.jar鍥涗釜綾誨簱銆?br />浠lug-in鐨勬柟寮忔墿灞昐truts鍔熻兘錛屽洜姝ゅ繀欏誨湪struts-config.xml涓畾涔夈€?br />蹇呴』鍦╳eb.xml涓畾涔夋爣絳懼簱銆?/p>
5. 妗f涓婁紶
瀛︿範閲嶇偣錛?br />struts-config.xml
DTO(Data Transfer Object)
DAO(Data Access Object)