锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲中文字幕无码不卡电影,亚洲卡一卡2卡三卡4麻豆,婷婷精品国产亚洲AV麻豆不片 http://www.tkk7.com/redcoatjk/category/48590.html涓囩墿鐨嗗璞?涓囦簨褰掕妭濂?/description>zh-cnWed, 02 Nov 2011 17:28:22 GMTWed, 02 Nov 2011 17:28:22 GMT60Hibernate session 鑾峰彇鏂瑰紡嫻呰皥http://www.tkk7.com/redcoatjk/archive/2011/11/02/362491.htmlredcoatjkredcoatjkTue, 01 Nov 2011 17:37:00 GMThttp://www.tkk7.com/redcoatjk/archive/2011/11/02/362491.htmlhttp://www.tkk7.com/redcoatjk/comments/362491.htmlhttp://www.tkk7.com/redcoatjk/archive/2011/11/02/362491.html#Feedback0http://www.tkk7.com/redcoatjk/comments/commentRss/362491.htmlhttp://www.tkk7.com/redcoatjk/services/trackbacks/362491.html浠呬負涓漢鐞嗚В.璇鋒寚姝?/strong>
Hibernate Session, 鍏朵綔鐢ㄦ棤闇澶氳█.
鍦?/span>榪愮敤涓負閬垮厤璧勬簮娑堣?涓鑸兘浼氭墜鍔ㄥ皝瑁呬竴涓狧ibernateUtil綾?鏈嬌鐢⊿pring綆$悊鐨勫墠鎻愪笅).
璇ョ被鐨勪綔鐢ㄤ嬌Hibernate鍔犺澆閰嶇疆鏂囦歡config, 鍒涘緩sessionFactory絳夊彧榪愯涓嬈?
瀹?/span>闄呰繍鐢ㄤ腑,緇忓父闇瑕佸皢褰撳墠綰跨▼鍜宻ession緇戝畾.涓鑸殑鐢ㄦ硶涓轟嬌鐢═hreadLocal: 鍦℉ibernateUtil綾諱腑灝佽hibernate鐨勭鐞?閫氳繃openSession鍙栧緱
session,騫跺皢鍏舵斁鍏hreadLocal鍙橀噺涓? 榪欐牱涓氬姟閫昏緫涓粎闇閫氳繃宸ュ叿綾誨彇寰楀綋鍓嶇嚎紼嬪搴旂殑session.浣跨敤瀹屾瘯鍚?璋冪敤宸ュ叿綾籧loseSession鏂規硶灝?br />session鍏抽棴,褰撳墠綰跨▼鐨凾hreadLocal鍙橀噺緗負NULL. 淇濊瘉綰跨▼褰掕繕綰跨▼姹犲鐢ㄥ悗,ThreadLocal涓虹┖,浠ュ厤鍑虹幇瀵艱嚧鍏朵粬綰跨▼璁塊棶鍒版湰綰跨▼鍙橀噺.
鑰?/span>鍚?Hibernate鐨凷essionFactory鎻愪緵鑾峰彇session鐨勬柊鏂規硶getCurrentSession (鑾峰緱涓庡綋鍓嶇嚎紼嬬粦瀹氱殑session). 鍐呴儴閫氳繃浠g悊灝佽,姝ゆ柟寮忓緱鍒扮殑session
涓嶄粎鍜屽綋鍓嶇嚎紼嬬粦瀹?涔熸棤闇鎵嬪姩寮鍏? 榛樿鍦ㄤ簨鍔℃彁浜や箣鍚?session鑷姩鍏抽棴. 闇娉ㄦ剰鐨勬槸,蹇呴』鍦ㄤ簨鍔″紑鍚殑鍓嶆彁涔嬩笅鎵嶅彲浣跨敤姝ょ鏂瑰紡鑾峰緱鐨剆ession.
姝ゅhibernate.cfg.xml閰嶇疆鏂囦歡涓篃璁擱厤緗?div><property name="current_session_context_class">thread</property> 鍩轟簬綰跨▼
鏈?/span>浜?寮曞叆Spring涔嬪悗.sessionfactory鐨勫垱寤虹瓑閮戒氦緇檚pring綆$悊.Spring涔熸彁渚涗簡HibernateTemplate,HibernateDaoSupport榪欐牱鐨勫皝瑁呮柟娉?
鐢ㄦ埛鍙互涓嶅啀鑰冭檻session鐨勭鐞?浜嬪姟鐨勫紑鍚叧闂?鍙渶閰嶇疆浜嬪姟鍗沖彲.
鑰屾墍璋搒ession鍏抽棴鍚?鍥犲歡榪熷姞杞藉鑷村墠鍙版棤娉曟樉紺虹殑闂浠ュ線瑙e喅鏂瑰紡涓哄己鍒跺叏閮ㄥ姞杞?鐜板湪涔熷彲閫氳繃鍦╳eb.xml涓厤緗?div>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter鏉ヨВ鍐?


------------------------------浠ヤ笅鍐呭涓哄伐鍦拌祫鏂?------------------------------------------------------------------------------
OpenSession : 鎵嬪姩鎵撳紑,闇鎵嬪姩鍏抽棴.[鎵浠ヤ唬鐮佷腑鍏呮枼鐫try catch --sf.openSession --鎵撳紑浜嬪姟,鎻愪氦-鍥炴粴 finall鍏抽棴session鐨勪唬鐮乚
threadlocal : hibernate緇欏嚭鐨勬彁紺? 鍦℉ibernateUtil宸ュ叿綾諱腑,new鍑簍hreadlocal ,鏀懼叆opensession.榪欐牱鍙互浣垮綋鍓嶇嚎紼嬬粦瀹歴ession.
浣跨敤鍚庨渶鍏抽棴session,灝唗hreadlocal涓璼ession鍙橀噺緗負null .
3  getCurrentSession: hibernate3鐨勬柊鐗規? 鏃犻渶鎵嬪姩鍏抽棴session,鑷姩鑾峰彇褰撳墠綰跨▼鐨剆ession,鑻ユ棤鍒欐柊寤轟箣. 闇鍦ㄩ厤緗枃浠朵腑閰嶇疆thread灞炴?琛ㄦ槑鍜屽綋鍓嶇嚎紼嬬粦瀹?
    鍙傝冪綉鍙嬭祫鏂?getCurrentSession妯″紡,鍐呴儴寮鍚簡session鑷姩鎻愪氦鐨勫姛鑳戒笖浣跨敤getCurrentSession鐨剆ession,鍙婃椂鍋歭oad鎿嶄綔,涔熼渶瑕佹墦寮浜嬪姟.
Title

1 getCurrentSession鍒涘緩鐨剆ession浼氬拰緇戝畾鍒板綋鍓嶇嚎紼?鑰宱penSession涓嶄細銆?/p>

2 getCurrentSession鍒涘緩鐨勭嚎紼嬩細鍦ㄤ簨鍔″洖婊氭垨浜嬬墿鎻愪氦鍚庤嚜鍔ㄥ叧闂?鑰宱penSession蹇呴』鎵嬪姩鍏抽棴

榪欓噷getCurrentSession鏈湴浜嬪姟(鏈湴浜嬪姟:jdbc)鏃?瑕佸湪閰嶇疆鏂囦歡閲岃繘琛屽涓嬭緗?/p>

 * 濡傛灉浣跨敤鐨勬槸鏈湴浜嬪姟錛坖dbc浜嬪姟錛?br />  <property name="hibernate.current_session_context_class">thread</property>
 * 濡傛灉浣跨敤鐨勬槸鍏ㄥ眬浜嬪姟錛坖ta浜嬪姟錛?br />  <property name="hibernate.current_session_context_class">jta</property>

getCurrentSession () 浣跨敤褰撳墠鐨剆ession
openSession()         閲嶆柊寤虹珛涓涓柊鐨剆ession

鍦ㄤ竴涓簲鐢ㄧ▼搴忎腑錛屽鏋淒AO 灞備嬌鐢⊿pring 鐨刪ibernate 妯℃澘錛岄氳繃Spring 鏉ユ帶鍒秙ession 鐨勭敓鍛藉懆鏈燂紝鍒欓閫塯etCurrentSession ()銆?/p>

浣跨敤Hibernate鐨勫ぇ澶氭暟搴旂敤紼嬪簭闇瑕佹煇縐嶅艦寮忕殑“涓婁笅鏂囩浉鍏崇殑” session錛岀壒瀹氱殑session鍦ㄦ暣涓壒瀹氱殑涓婁笅鏂囪寖鍥村唴濮嬬粓鏈夋晥銆傜劧鑰岋紝瀵逛笉鍚岀被鍨嬬殑搴旂敤紼嬪簭鑰岃█錛岃涓轟粈涔堟槸緇勬垚榪欑“涓婁笅鏂?#8221;涓嬩竴涓畾涔夐氬父 鏄洶闅劇殑錛涗笉鍚岀殑涓婁笅鏂囧“褰撳墠”榪欎釜姒傚康瀹氫箟浜嗕笉鍚岀殑鑼冨洿銆?span style="color: #ff0000;">鍦?.0鐗堟湰 涔嬪墠錛屼嬌鐢℉ibernate鐨勭▼搴忚涔堥噰鐢ㄨ嚜琛岀紪鍐欑殑鍩轟簬 ThreadLocal鐨勪笂涓嬫枃session錛岃涔堥噰鐢℉ibernateUtil榪欐牱鐨勮緟鍔╃被錛岃涔堥噰鐢ㄧ涓夋柟妗嗘灦錛堟瘮濡係pring鎴朠ico)錛?瀹冧滑鎻愪緵浜嗗熀浜庝唬鐞?proxy)鎴栬呭熀浜庢嫤鎴櫒(interception)鐨勪笂涓嬫枃鐩稿叧session銆?/span>浠?.0.1鐗堟湰寮濮嬶紝Hibernate澧炲姞浜哠essionFactory.getCurrentSession()鏂規硶銆?/span>涓 寮濮嬶紝瀹冨亣瀹氫簡閲囩敤JTA浜嬪姟錛孞TA浜嬪姟瀹氫箟浜嗗綋鍓峴ession鐨勮寖鍥村拰涓婁笅鏂?scope and context)銆侶ibernate寮鍙戝洟闃熷潥淇★紝鍥犱負鏈夊ソ鍑犱釜鐙珛鐨凧TA TransactionManager瀹炵幇紼沖畾鍙敤錛屼笉璁烘槸鍚﹁閮ㄧ講鍒頒竴涓狫2EE瀹瑰櫒涓紝澶у鏁?鍋囪嫢涓嶆槸鎵鏈夌殑錛夊簲鐢ㄧ▼搴忛兘搴旇閲囩敤JTA浜嬪姟綆$悊銆?鍩轟簬榪欎竴鐐癸紝閲囩敤JTA鐨勪笂涓嬫枃鐩稿叧session鍙互婊¤凍浣犱竴鍒囬渶瑕併?/p>

鏇村ソ鐨勬槸錛屼粠3.1寮濮嬶紝SessionFactory.getCurrentSession()鐨勫悗鍙板疄鐜版槸鍙嫈鎻掔殑銆傚洜姝わ紝鎴戜滑寮曞叆浜嗘柊鐨勬墿灞?鎺ュ彛 (org.hibernate.context.CurrentSessionContext)鍜屾柊鐨勯厤緗弬鏁?(hibernate.current_session_context_class)錛屼互渚垮浠涔堟槸“褰撳墠session”鐨勮寖鍥村拰涓婁笅鏂?scope and context)鐨勫畾涔夎繘琛屾嫈鎻掋?/p>

璇峰弬闃?org.hibernate.context.CurrentSessionContext鎺ュ彛鐨凧avadoc,閭i噷鏈夊叧浜庡畠鐨勫綰︾殑璇︾粏璁ㄨ銆傚畠瀹氫箟 浜嗗崟涓鐨勬柟娉曪紝currentSession()錛岀壒瀹氱殑瀹炵幇鐢ㄥ畠鏉ヨ礋璐h窡韙綋鍓嶇殑涓婁笅鏂噑ession銆侶ibernate鍐呯疆浜嗘鎺ュ彛鐨勪袱縐嶅疄鐜般?/p>

org.hibernate.context.JTASessionContext - 褰撳墠session鏍規嵁JTA鏉ヨ窡韙拰鐣屽畾銆傝繖鍜屼互鍓嶇殑浠呮敮鎸丣TA鐨勬柟娉曟槸瀹屽叏涓鏍風殑銆傝鎯呰鍙傞槄Javadoc銆?/p>

org.hibernate.context.ThreadLocalSessionContext - 褰撳墠session閫氳繃褰撳墠鎵ц鐨勭嚎紼嬫潵璺熻釜鍜岀晫瀹氥傝鎯呬篃璇峰弬闃匤avadoc銆?/p>

榪欎袱縐嶅疄鐜伴兘鎻愪緵浜?#8220;姣忔暟鎹簱浜嬪姟瀵瑰簲涓涓猻ession”鐨勭紪紼嬫ā鍨嬶紝涔熺О浣滄瘡嬈¤姹備竴涓猻ession銆侶ibernate session鐨勮搗濮嬪拰緇堢粨鐢辨暟鎹簱浜嬪姟鐨勭敓瀛樻潵鎺у埗銆傚亣鑻ヤ綘閲囩敤鑷緙栧啓浠g爜鏉ョ鐞嗕簨鍔★紙姣斿錛屽湪綰補鐨凧2SE,鎴栬?JTA/UserTransaction/BMT錛夛紝寤鴻浣犱嬌鐢℉ibernate Transaction API鏉ユ妸搴曞眰浜嬪姟瀹炵幇浠庝綘鐨勪唬鐮佷腑闅愯棌鎺夈傚鏋滀綘鍦ㄦ敮鎸丆MT鐨凟JB瀹瑰櫒涓墽琛岋紝浜嬪姟杈圭晫鏄0鏄庡紡瀹氫箟鐨勶紝浣犱笉闇瑕佸湪浠g爜涓繘琛屼換浣曚簨鍔℃垨 session綆$悊鎿嶄綔銆傝鍙傞槄絎?11 绔?浜嬪姟鍜屽茍鍙戜竴鑺傛潵闃呰鏇村鐨勫唴瀹瑰拰紺轟緥浠g爜銆?/p>

hibernate.current_session_context_class 閰嶇疆鍙傛暟瀹氫箟浜嗗簲璇ラ噰鐢ㄥ摢涓猳rg.hibernate.context.CurrentSessionContext瀹炵幇銆傛敞鎰忥紝涓轟簡鍚戜笅鍏煎錛屽鏋滄湭 閰嶇疆姝ゅ弬鏁幫紝浣嗘槸瀛樺湪org.hibernate.transaction.TransactionManagerLookup鐨勯厤 緗紝Hibernate浼氶噰鐢╫rg.hibernate.context.JTASessionContext銆備竴鑸岃█錛屾鍙傛暟鐨勫兼寚鏄庝簡瑕佷嬌鐢ㄧ殑瀹?鐜扮被鐨勫叏鍚嶏紝浣嗛偅涓や釜鍐呯疆鐨勫疄鐜板彲浠ヤ嬌鐢ㄧ畝鍐欙紝鍗?jta"鍜?thread"銆?/p>

1銆乬etCurrentSession()涓巓penSession()鐨勫尯鍒紵

* 閲囩敤getCurrentSession()鍒涘緩鐨剆ession浼氱粦瀹氬埌褰撳墠綰跨▼涓紝鑰岄噰鐢╫penSession()
鍒涘緩鐨剆ession鍒欎笉浼?br /> * 閲囩敤getCurrentSession()鍒涘緩鐨剆ession鍦╟ommit鎴杛ollback鏃朵細鑷姩鍏抽棴錛岃岄噰鐢╫penSession()
鍒涘緩鐨剆ession蹇呴』鎵嬪姩鍏抽棴
2銆佷嬌鐢╣etCurrentSession()闇瑕佸湪hibernate.cfg.xml鏂囦歡涓姞鍏ュ涓嬮厤緗細
* 濡傛灉浣跨敤鐨勬槸鏈湴浜嬪姟錛坖dbc浜嬪姟錛?br /> <property name="hibernate.current_session_context_class">thread</property>
* 濡傛灉浣跨敤鐨勬槸鍏ㄥ眬浜嬪姟錛坖ta浜嬪姟錛?br /> <property name="hibernate.current_session_context_class">jta</property>

鍒╀簬ThreadLocal妯″紡綆$悊Session
   鏃╁湪Java1.2鎺ㄥ嚭涔嬫椂錛孞ava騫沖彴涓氨寮曞叆浜嗕竴涓柊鐨勬敮鎸侊細java.lang.ThreadLocal錛岀粰鎴戜滑鍦ㄧ紪鍐欏綰跨▼紼嬪簭
   鏃舵彁渚涗簡涓縐嶆柊鐨勯夋嫨銆俆hreadLocal鏄粈涔堝憿錛熷叾瀹濼hreadLocal騫墮潪鏄竴涓嚎紼嬬殑鏈湴瀹炵幇鐗堟湰錛屽畠騫朵笉鏄竴涓猅hread錛?br />    鑰屾槸thread local variable(綰跨▼灞閮ㄥ彉閲?銆備篃璁告妸瀹冨懡鍚嶄負ThreadLocalVar鏇村姞鍚堥傘傜嚎紼嬪眬閮ㄥ彉閲?ThreadLocal)
   鍏跺疄鐨勫姛鐢ㄩ潪甯哥畝鍗曪紝灝辨槸涓烘瘡涓涓嬌鐢ㄦ煇鍙橀噺鐨勭嚎紼嬮兘鎻愪緵涓涓鍙橀噺鍊肩殑鍓湰錛屾槸姣忎竴涓嚎紼嬮兘鍙互鐙珛鍦版敼鍙樿嚜宸辯殑鍓湰錛?br />    鑰屼笉浼氬拰鍏跺畠綰跨▼鐨勫壇鏈啿紿併備粠綰跨▼鐨勮搴︾湅錛屽氨濂藉儚姣忎竴涓嚎紼嬮兘瀹屽叏鎷ユ湁涓涓鍙橀噺銆?br />    ThreadLocal鏄浣曞仛鍒頒負姣忎竴涓嚎紼嬬淮鎶ゅ彉閲忕殑鍓湰鐨勫憿錛熷叾瀹炲疄鐜扮殑鎬濊礬寰堢畝鍗曪紝鍦═hreadLocal綾諱腑鏈変竴涓狹ap錛?br />    鐢ㄤ簬瀛樺偍姣忎竴涓嚎紼嬬殑鍙橀噺鐨勫壇鏈傛瘮濡備笅闈㈢殑紺轟緥瀹炵幇(涓轟簡綆鍗曪紝娌℃湁鑰冭檻闆嗗悎鐨勬硾鍨?錛?br /> public class HibernateUtil {

public static final ThreadLocal session =new ThreadLocal();

public static final SessionFactory sessionFactory;
   static {
      try {
        sessionFactory = new Configuration().configure().buildSessionFactory();
      } catch (Throwable ex) {
           throw new ExceptionInInitializerError(ex);
      }   
}

     public static Session currentSession() throws HibernateException {
        Session s = session.get();
        if(s == null) {
          s = sessionFactory.openSession();
          session.set(s);
           }
         return s;
       }

    public static void closeSession() throws HibernateException {
           Session s = session.get();
        if(s != null) {
            s.close();
        }
        session.set(null);
    }
}

浠ヤ笅涓篢hreadLocal鐨勫弬鑰冭祫鏂?br />
Title

 鏈榪戠敱浜庨渶瑕佺敤鍒癟hreadLocal錛屽湪緗戜笂鎼滅儲浜嗕竴浜涚浉鍏寵祫鏂欙紝鍙戠幇瀵筎hreadLocal緇忓父浼氭湁涓嬮潰鍑犵璇В

 涓銆乀hreadLocal鏄痡ava綰跨▼鐨勪竴涓疄鐜?br />      ThreadLocal鐨勭‘鏄拰java綰跨▼鏈夊叧錛屼笉榪囧畠騫朵笉鏄痡ava綰跨▼鐨勪竴涓疄鐜幫紝瀹冨彧鏄敤鏉ョ淮鎶ゆ湰鍦板彉閲忋傞拡瀵規瘡涓嚎紼嬶紝鎻愪緵鑷繁鐨勫彉閲忕増鏈紝涓昏鏄負浜嗛伩鍏嶇嚎紼嬪啿紿侊紝姣忎釜綰跨▼緇存姢鑷繁鐨勭増鏈傚郊姝ょ嫭绔嬶紝淇敼涓嶄細褰卞搷鍒板鏂廣?/p>

 浜屻乀hreadLocal鏄浉瀵逛簬姣忎釜session鐨?/p>

        ThreadLocal欏懼悕鎬濅箟錛屾槸閽堝綰跨▼銆傚湪java web緙栫▼涓婏紝姣忎釜鐢ㄦ埛浠庡紑濮嬪埌浼氳瘽緇撴潫錛岄兘鏈夎嚜宸辯殑涓涓猻ession鏍囪瘑銆備絾鏄疶hreadLocal騫朵笉鏄湪浼氳瘽灞備笂銆傚叾 瀹烇紝Threadlocal鏄嫭绔嬩簬鐢ㄦ埛session鐨勩傚畠鏄竴縐嶆湇鍔″櫒绔涓猴紝褰撴湇鍔″櫒姣忕敓鎴愪竴涓柊鐨勭嚎紼嬫椂錛屽氨浼氱淮鎶よ嚜宸辯殑 ThreadLocal銆傚浜庤繖涓瑙o紝涓漢璁や負搴旇鏄紑鍙戜漢鍛樺湪鏈湴鍩轟簬涓浜涘簲鐢ㄦ湇鍔″櫒嫻嬭瘯鐨勭粨鏋溿備紬鎵鍛ㄧ煡錛屼竴鑸殑搴旂敤鏈嶅姟鍣ㄩ兘浼氱淮鎶や竴濂楃嚎紼嬫睜錛屼篃 灝辨槸璇達紝瀵逛簬姣忔璁塊棶錛屽茍涓嶄竴瀹氬氨鏂扮敓鎴愪竴涓嚎紼嬨傝屾槸鑷繁鏈変竴涓嚎紼嬬紦瀛樻睜銆傚浜庤闂紝鍏堜粠緙撳瓨姹犻噷闈㈡壘鍒板凡鏈夌殑綰跨▼錛屽鏋滃凡緇忕敤鍏夛紝鎵嶅幓鏂扮敓鎴愭柊鐨勭嚎 紼嬨傛墍浠ワ紝鐢變簬寮鍙戜漢鍛樿嚜宸卞湪嫻嬭瘯鏃訛紝涓鑸彧鏈変粬鑷繁鍦ㄦ祴錛岃繖鏍鋒湇鍔″櫒鐨勮礋鎷呭緢灝忥紝榪欐牱瀵艱嚧姣忔璁塊棶鍙兘鏄叡鐢ㄥ悓鏍蜂竴涓嚎紼嬶紝瀵艱嚧浼氭湁榪欐牱鐨勮瑙o細姣忎釜 session鏈変竴涓猅hreadLocal

 涓夈乀hreadLocal鏄浉瀵逛簬姣忎釜綰跨▼鐨勶紝鐢ㄦ埛姣忔璁塊棶浼氭湁鏂扮殑ThreadLocal

  鐞嗚涓婃潵璇達紝ThreadLocal鏄殑紜槸鐩稿浜庢瘡涓嚎紼嬶紝姣忎釜綰跨▼浼氭湁鑷繁鐨凾hreadLocal銆備絾鏄笂闈㈠凡緇忚鍒幫紝涓鑸殑搴旂敤鏈?鍔″櫒閮戒細緇存姢涓濂楃嚎紼嬫睜銆傚洜姝わ紝涓嶅悓鐢ㄦ埛璁塊棶錛屽彲鑳戒細鎺ュ彈鍒板悓鏍風殑綰跨▼銆傚洜姝わ紝鍦ㄥ仛鍩轟簬TheadLocal鏃訛紝闇瑕佽皚鎱庯紝閬垮厤鍑虹幇 ThreadLocal鍙橀噺鐨勭紦瀛橈紝瀵艱嚧鍏朵粬綰跨▼璁塊棶鍒版湰綰跨▼鍙橀噺 .[senngr:HibernateUtil宸ュ叿綾諱腑,涓鑸兘鏄氳繃closesession鐨勬柟娉?閲岄潰灝唎pensession瀵瑰簲鐨剆ession鍏抽棴.騫跺皢ThreadLocal鍙橀噺緗負NULL.榪欐牱綰跨▼姹犱腑濡傛灉鍐嶅皢榪欎釜綰跨▼鍒嗛厤緇欏埆浜?瀵瑰簲鐨凾hreadLocal鏄共鍑鐨?]

 鍥涖佸姣忎釜鐢ㄦ埛璁塊棶錛孴hreadLocal鍙互澶氱敤
        鍙互璇達紝ThreadLocal鏄竴鎶婂弻鍒冨墤錛岀敤寰楁潵鐨勮瘽鍙互璧峰埌闈炲父濂界殑鏁堟灉銆備絾鏄紝ThreadLocal濡傛灉鐢ㄥ緱涓嶅ソ錛屽氨浼氳窡鍏ㄥ眬鍙橀噺涓鏍楓備唬鐮佷笉 鑳介噸鐢紝涓嶈兘鐙珛嫻嬭瘯銆傚洜涓猴紝涓浜涙湰鏉ュ彲浠ラ噸鐢ㄧ殑綾伙紝鐜板湪渚濊禆浜嶵hreadLocal鍙橀噺銆傚鏋滃湪鍏朵粬娌℃湁ThreadLocal鍦哄悎錛岃繖浜涚被灝卞彉寰椾笉 鍙敤浜嗐備釜浜鴻寰桾hreadLocal鐢ㄥ緱寰堝ソ鐨勫嚑涓簲鐢ㄥ満鍚堬紝鍊煎緱鍙傝?/p>

  1銆佸瓨鏀懼綋鍓峴ession鐢ㄦ埛錛歲uake want鐨刯ert

  2銆佸瓨鏀句竴浜沜ontext鍙橀噺錛屾瘮濡倃ebwork鐨凙ctionContext

  3銆佸瓨鏀緎ession錛屾瘮濡係pring hibernate orm鐨剆ession



redcoatjk 2011-11-02 01:37 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 亚洲成色在线影院| 亚洲免费观看在线视频| 亚洲人成人77777在线播放| 国产精品亚洲一区二区三区在线观看| 91视频免费观看| 成人免费无码大片a毛片软件| 国产亚洲精品激情都市| 亚洲图片激情小说| 国产精品免费大片一区二区| 亚洲视频免费观看| 亚洲精品国产日韩无码AV永久免费网| 亚洲精品午夜久久久伊人| 国产亚洲精品91| 亚洲精品视频免费在线观看| 亚洲情侣偷拍精品| 亚洲国产综合精品中文第一| 成人性做爰aaa片免费看| 国产精品免费电影| 亚洲成无码人在线观看| 好吊色永久免费视频大全| 成人毛片免费在线观看| 亚洲A∨无码一区二区三区| 免费国产va视频永久在线观看| 999国内精品永久免费视频| 亚洲熟妇av一区二区三区漫画| 亚洲国产欧美国产综合一区 | 亚洲欧美精品午睡沙发| 久久精品免费一区二区三区| 免费一级毛片一级毛片aa| 亚洲一级毛片在线播放| 国内精品免费在线观看| 亚洲精品无码AV中文字幕电影网站| 亚洲精品综合在线影院| 日韩免费无码视频一区二区三区| 国产午夜亚洲不卡| 直接进入免费看黄的网站| 男女超爽刺激视频免费播放| 亚洲AV人无码综合在线观看| 一级中文字幕乱码免费| 日本久久久免费高清| 在线综合亚洲欧洲综合网站|