锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久国产精品亚洲一区二区,亚洲无码视频在线,国产精品成人亚洲http://www.tkk7.com/masen/category/21081.html浠庣幇鍦ㄥ紑濮?/description>zh-cnMon, 07 May 2007 04:04:51 GMTMon, 07 May 2007 04:04:51 GMT60JSF涓嬌鐢═ileshttp://www.tkk7.com/masen/articles/115599.htmlMasenMasenSun, 06 May 2007 10:24:00 GMThttp://www.tkk7.com/masen/articles/115599.htmlhttp://www.tkk7.com/masen/comments/115599.htmlhttp://www.tkk7.com/masen/articles/115599.html#Feedback0http://www.tkk7.com/masen/comments/commentRss/115599.htmlhttp://www.tkk7.com/masen/services/trackbacks/115599.htmlJSF涓嬌鐢═iles
    涓昏鏈変袱縐嶆柟娉曘備竴縐嶆槸浣跨敤myfaces涓殑JspTilesViewHandlerImpl,鍙︿竴縐嶆柟娉曟槸鐢╯truts1.1涓殑TilesServlet(鍥犱負鎴戞鍦ㄤ嬌鐢?.2錛屾墍浠ョ暐榪?銆?/div>
 
鏂規硶涓錛氫嬌鐢╩yfaces涓殑spTilesViewHandlerImpl銆備緥紼嬪弬瑙丮yFaces鐨則iles渚嬪瓙
 
1.鍦╳eb.xml涓姞涓涓弬鏁板畾涔夛紝鐢ㄤ簬鎸囧畾tiles瀹氫箟鏂囦歡
<context-param>
     <param-name>tiles-definitions</param-name>
     <param-value>/WEB-INF/config/tiles-defs.xml</param-value>
</context-param>
 
2.鍦↗SF鐨勯厤緗枃浠朵腑鍔犱竴涓獀iew-handle,浣縅SF鑳藉鐞唗iles鐨勫畾涔?/div>
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE faces-config PUBLIC
  "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
  "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
 
<faces-config>
<application>
    <view-handler>org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl</view-handler>
 <message-bundle>resource</message-bundle>
 <locale-config>
  <default-locale>zh</default-locale>
 </locale-config>
</application>
 
</faces-config>
娉細 JspTilesViewHandlerImpl鍦╟omahawk鐨刯ar鍖呬腑
 
3.瀹氫箟tiles鐨勫畾涔夋枃浠跺拰妯℃澘絳夛紝榪欎笌Struts涓畬鍏ㄤ竴鏍楓?/div>

Masen 2007-05-06 18:24 鍙戣〃璇勮
]]>DataModel鐨勫嚑縐嶇被鍨?/title><link>http://www.tkk7.com/masen/articles/109182.html</link><dc:creator>Masen</dc:creator><author>Masen</author><pubDate>Sat, 07 Apr 2007 16:14:00 GMT</pubDate><guid>http://www.tkk7.com/masen/articles/109182.html</guid><wfw:comment>http://www.tkk7.com/masen/comments/109182.html</wfw:comment><comments>http://www.tkk7.com/masen/articles/109182.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/masen/comments/commentRss/109182.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/masen/services/trackbacks/109182.html</trackback:ping><description><![CDATA[<p>ListDataModel, ArrayDataModel, ResultDataModel, ResultSetDataModel, ScalarDataModel</p> <p><br>ListDataModel鍙互鏂逛究鐨勫寘瑁卝ava.util.List瀵硅薄銆侺istDataModel(java.util.List list) <br>ArrayDataModel鍙互鏂逛究鐨勫寘瑁匫bject[] 鏁扮粍銆侫rrayDataModel(java.lang.Object[] array) <br>ResultDataModel鍙互鏂逛究鍦板寘瑁匤STL鐨勭粨鏋滃璞?JSTL Result Object),閫氬父浠h〃閫氳繃JSTL鏍囩鎵цSQL璇彞浜х敓鐨勭粨鏋溿俁esultDataModel(javax.servlet.jsp.jstl.sql.Result result) <br>ResultSetDataModel鍙互鏂逛究鐨勫寘瑁匤ava瀵硅薄鐨勭粨鏋滈泦(ResultSet of Java objects). ResultSetDataModel(java.sql.ResultSet resultSet)娉ㄦ剰錛氳繖涓粨鏋滈泦蹇呴』鏄彲浠ユ粴鍔ㄧ殑(Scrollable),鍙﹀濡傛灉杈撳叆緇勪歡(鍙兘鏇存柊妯″瀷鍊?閫氳繃浣跨敤鍊肩粦瀹氭潵寮曠敤榪欎釜瀵硅薄錛岃繖涓粨鏋滈泦蹇呴』鏄彲鏇存柊(Updatable)鐨?<br>ScalarDataModel鍙互鏂逛究鐨勫寘瑁呭崟涓狫ava瀵硅薄銆係calarDataModel(java.lang.Object scalar)</p> <p> </p> <img src ="http://www.tkk7.com/masen/aggbug/109182.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/masen/" target="_blank">Masen</a> 2007-04-08 00:14 <a href="http://www.tkk7.com/masen/articles/109182.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>璁捐妯″紡鍜孞SF鎶鏈?杞?http://www.tkk7.com/masen/articles/107514.htmlMasenMasenFri, 30 Mar 2007 09:30:00 GMThttp://www.tkk7.com/masen/articles/107514.htmlhttp://www.tkk7.com/masen/comments/107514.htmlhttp://www.tkk7.com/masen/articles/107514.html#Feedback0http://www.tkk7.com/masen/comments/commentRss/107514.htmlhttp://www.tkk7.com/masen/services/trackbacks/107514.html甯姪鎮ㄦ礊瀵?JSF 妗嗘灦涓嬌鐢ㄧ殑璁捐妯″紡錛屾繁鍏ョ悊瑙e叾宸ヤ綔鍘熺悊銆?br />
鏈枃鎺㈣浜?JSF 妗嗘灦涓嬌鐢ㄧ殑璁捐妯″紡銆傝緇嗚璁虹殑璁捐妯″紡鍖呮嫭 Singleton銆丮odel-View-Controller銆丗actory Method銆丼tate銆丆omposite銆丏ecorator銆丼trategy銆乀emplate Method 鍜?Observer 妯″紡銆?

璁捐妯″紡鍜?JavaServer Faces (JSF) 鎶鏈?

棣栧厛綆瑕佸湴浠嬬粛涓涓嬫ā寮忓拰 JSF 妗嗘灦銆?br />
  • 妯″紡銆?/strong>璁捐妯″紡鏄闂鍜岃В鍐蟲柟妗堣繘琛屾娊璞$殑鏅亶閫傜敤鐨勬柟娉曘傚洜涓烘ā寮忔槸鎵鏈夊紑鍙戜漢鍛樺拰鏋舵瀯甯堝叕璁ょ殑錛屾墍浠ユā寮忓彲浠ヨ妭綰︽椂闂村拰璧勬簮銆傜敤澶栬璇濇潵璇達紝妯″紡灝辨槸鍏充簬鏌愪釜浜烘墍鍏辯煡鐨勯棶棰樼殑緇忚繃楠岃瘉鐨勮В鍐蟲柟妗堛傛ā寮忓彲浠ラ噸鐢紝閲嶇敤浣垮緱瑙e喅鏂規鏇村仴澹?
  • Java Server Faces銆?/strong> JSF 浣撶郴緇撴瀯鏄竴縐?Web 搴旂敤紼嬪簭妗嗘灦銆傚畠鏄?Java Community Process (JCP) 鎺ㄥ姩鐨勶紝鏈夋湜鎴愪負 Web 搴旂敤紼嬪簭寮鍙戠殑鏍囧噯妗嗘灦銆傜洰鍓嶇敤浜庡紑鍙?Web 搴旂敤紼嬪簭鐨勬鏋舵湁 50 澶氫釜錛岃繖璇存槑榪垏闇瑕佸疄鐜版鏋剁殑鏍囧噯鍖栵紝榪欐鏄?JSF 妗嗘灦鐨勭洰鏍囷紒
銆銆娣卞叆鍓栨瀽 JSF 妯″紡

鐜板湪鎴戜滑鏉ヨ璁?JSF 浣撶郴緇撴瀯涓殑鍚勭璁捐妯″紡銆傛湰鏂囧皢璇︾粏璁ㄨ Singleton銆丮odel-View-Controller銆丗actory Method銆丼tate銆丆omposite銆丏ecorator銆丼trategy銆乀emplate Method 鍜?Observer 璁捐妯″紡銆傛垜灝嗗垎鏋愭瘡縐嶆ā寮忕殑鐢ㄩ斿強鍏跺湪 JSF 妗嗘灦涓殑浣滅敤銆?br />
Singleton 妯″紡

Singleton 妯″紡鐨勭洰鐨勬槸淇濊瘉綾誨彧鏈変竴涓疄渚嬭鍔犺澆錛岃瀹炰緥鎻愪緵涓涓叏灞璁塊棶鐐廣傚綋鍚姩鍏鋒湁 JSF 鏀寔鐨?Web 搴旂敤紼嬪簭鏃訛紝Web 瀹瑰櫒鍒濆鍖栦竴涓?FacesServlet 瀹炰緥銆傚湪榪欎釜闃舵錛孎acesServlet 瀵規瘡涓?Web 搴旂敤紼嬪簭瀹炰緥鍖?Application 鍜?LifeCycle 瀹炰緥涓嬈°傝繖浜涘疄渚嬪氨閲囩敤浼楁墍鍛ㄧ煡鐨?Singleton 妯″紡錛岄氬父鍙渶瑕佽綾誨瀷鐨勪竴涓疄渚嬨?br />
浣跨敤 JSF 鐨?Web 搴旂敤紼嬪簭鍙渶瑕?Application 鍜?LifeCycle 綾葷殑涓涓疄渚嬨侺ifeCycle 綆$悊澶氫釜 JSF 璇鋒眰鐨勬暣涓敓鍛芥湡銆傚洜涓哄叾鐘舵佸拰琛屼負鍦ㄦ墍鏈夎姹備箣闂村叡浜紝榪欎簺瀵硅薄閲囩敤 Singleton 妯″紡鍚堟儏鍚堢悊銆侺ifeCycle 緇存姢鐨?PhaseListeners 涔熸槸 Singleton 妯″紡鐨勩侾haseListeners 鐢辨墍鏈?JSF 璇鋒眰鍏變韓銆傚湪 JSF 妗嗘灦涓彲浠ュ箍娉涗嬌鐢?Singleton 妯″紡錛屼互鍑忓皯鍐呭瓨鍗犵敤鍜屾彁渚涘璞$殑鍏ㄥ眬璁塊棶銆侼avigationHandler錛堢敤浜庣‘瀹氳姹傜殑閫昏緫緇撴灉錛夊拰 ViewHandler錛堢敤浜庡垱寤鴻鍥撅級涔熸槸浣跨敤 Singleton 妯″紡鐨勪緥瀛愩?br />
Model-View-Controller (MVC)

MVC 妯″紡鐨勭洰鐨勬槸浠庢暟鎹〃紺猴紙View錛変腑灝嗘暟鎹紙鍗?Model錛夊垎紱誨嚭鏉ャ傚鏋滃簲鐢ㄧ▼搴忔湁澶氱琛ㄧず錛屽彲浠ヤ粎鏇挎崲瑙嗗浘灞傝岄噸鐢ㄦ帶鍒跺櫒鍜屾ā鍨嬩唬鐮併傜被浼肩殑錛屽鏋滈渶瑕佹敼鍙樻ā鍨嬶紝鍙互鍦ㄥ緢澶х▼搴︿笂涓嶆敼鍙樿鍥懼眰銆傛帶 鍒跺櫒澶勭悊鐢ㄦ埛鍔ㄤ綔錛岀敤鎴峰姩浣滃彲鑳介犳垚妯″瀷鏀瑰彉鍜岃鍥炬洿鏂般傚綋鐢ㄦ埛璇鋒眰涓涓?JSF 欏甸潰鏃訛紝璇鋒眰鍙戦佸埌 FacesServlet銆侳acesServlet 鏄?JSF 浣跨敤鐨勫墠绔帶鍒跺櫒 servlet銆傚拰鍏朵粬寰堝 Web 搴旂敤紼嬪簭妗嗘灦涓鏍鳳紝JSF 浣跨敤 MVS 妯″紡娑堥櫎瑙嗗浘鍜屾ā鍨嬩箣闂寸殑鑰﹀悎銆備負浜嗛泦涓鐞嗙敤鎴瘋姹傦紝鎺у埗鍣?servlet 鏀瑰彉妯″瀷騫跺皢鐢ㄦ埛瀵艱埅鍒拌鍥俱?br />
FacesServlet 鏄?JSF 妗嗘灦涓墍鏈夌敤鎴瘋姹傞兘瑕佺粡榪囩殑鎺у埗鍣ㄥ厓绱犮侳acesServlet 鍒嗘瀽鐢ㄦ埛璇鋒眰錛屼嬌鐢ㄦ墭綆?bean 瀵規ā鍨嬭皟鐢ㄥ悇縐嶅姩浣溿傚悗鍙幫紙backing錛夋垨鎵樼錛坢anaged錛塨ean 灝辨槸璇ユā鍨嬬殑渚嬪瓙銆侸SF 鐢ㄦ埛鐣岄潰錛圲I錛夌粍浠舵槸瑙嗗浘灞傜殑渚嬪瓙銆侻VC 妯″紡鎶婁換鍔″垎瑙g粰鍏鋒湁涓嶅悓鎶鑳界殑寮鍙戜漢鍛橈紝浣胯繖浜涗換鍔¤兘澶熷悓鏃惰繘琛岋紝榪欐牱 GUI 璁捐浜哄憳灝卞彲浠ヤ嬌鐢ㄤ赴瀵岀殑 UI 緇勪歡鍒涘緩 JSF 欏甸潰錛屽悓鏃跺悗绔紑鍙戜漢鍛樺彲浠ュ垱寤烘墭綆?bean 鏉ョ紪鍐欎笓闂ㄧ殑涓氬姟閫昏緫浠g爜銆?br />
Factory Method 妯″紡

Factory Method 妯″紡鐨勭洰鐨勬槸瀹氫箟涓涓敤浜庡垱寤哄璞$殑鎺ュ彛錛屼絾鏄妸瀵硅薄瀹炰緥鍖栨帹榪熷埌瀛愮被涓傚湪 JSF 浣撶郴緇撴瀯涓紝Factory Method 妯″紡琚敤浜庡垱寤哄璞°侺ifeCycleFactory 鏄竴涓垱寤哄拰榪斿洖 LifeCycle 瀹炰緥鐨勫伐鍘傚璞°侺ifeCycleFactory 鐨?getLifeCycle (String LifeCycleId) 鏂規硶閲囩敤 Factory Method 妯″紡錛屾牴鎹?LifeCycleId 鍒涘緩錛堝鏋滈渶瑕侊級騫惰繑鍥?LifeCycle 瀹炰緥銆傝嚜瀹氫箟鐨?JSF 瀹炵幇鍙互閲嶆柊瀹氫箟 getLifeCycle 鎶借薄鏂規硶鏉ュ垱寤鴻嚜瀹氫箟鐨?LifeCycle 瀹炰緥銆傞粯璁ょ殑 JSF 瀹炵幇鎻愪緵榛樿鐨?LifeCycle 瀹炰緥銆傛澶栵紝瀵逛簬姣忎釜 JSF 璇鋒眰錛孎acesServlet 閮戒粠 FacesContextFactory 寰楀埌 FacesContext銆侳acesContextFactory 鏄竴涓娊璞$被錛屽叕寮浜?getFacesContext API錛孞SF 瀹炵幇鎻愪緵浜?FacesContextFactory 鍜?getFacesContext API 鐨勫叿浣撳疄鐜般傝繖鏄彟澶栦竴涓嬌鐢?Factory Method 妯″紡鐨勪緥瀛愶紝鍏蜂綋鐨?FacesContextFactory 瀹炵幇鍒涘緩 FacesContext 瀵硅薄銆?br />
State 妯″紡

State 妯″紡鐨勭洰鐨勬槸鍦ㄨ〃紺虹姸鎬佺殑涓嶅悓綾諱箣闂村垎閰嶄笌鐘舵佹湁鍏崇殑閫昏緫銆侳acesServlet 瀵?LifCycle 瀹炰緥璋冪敤 execute 鍜?render 鏂規硶銆侺ifeCycle 鍗忚皟涓嶅悓鐨?Phrase 浠ヤ究鎵ц JSF 璇鋒眰銆傚湪榪欓噷 JSF 瀹炵幇灝遍伒寰簡 State 妯″紡銆傚鏋滄病鏈変嬌鐢ㄨ繖縐嶆ā寮忥紝LifeCycle 瀹炵幇灝變細琚ぇ閲忕殑鏉′歡錛堝嵆 鈥渋f鈥?璇彞錛夋悈寰椾竴濉岀硦娑傘侸SF 瀹炵幇涓烘瘡涓姸鎬侊紙鎴栭樁孌碉級鍒涘緩鍗曠嫭鐨勭被騫惰皟鐢?step銆俻hase 鏄竴涓娊璞$被錛屽畾浜嗘瘡涓?step 鐨勫叕鍏辨帴鍙c傚湪 JSF 妗嗘灦涓畾涔変簡鍏釜 phrase錛堝嵆 step錛夛細RestoreViewPhase銆丄pplyRequestValues銆丳rocessValidationsPhase銆?UpdateModelValuesPhase銆両nvokeApplicationPhase 鍜?RenderResponsePhase銆?br />
鍦?State 妯″紡涓紝LifeCycle 鎶?FacesContext 瀵硅薄浼犻掔粰 phase銆傛瘡涓樁孌墊垨鐘舵佹敼鍙樹紶閫掔粰瀹冪殑涓婁笅鏂囦俊鎭紝鐒跺悗璁劇疆 FacesContext 鏈韓涓殑鏍囧織琛ㄦ槑涓嬩竴涓彲鑳界殑姝ラ銆侸SF 瀹炵幇鍦ㄦ瘡涓楠や腑鏀瑰彉鍏惰涓恒傛瘡涓樁孌甸兘鍙互浣滀負涓嬩竴涓樁孌電殑璧峰洜銆侳acesContext 鏈変袱縐嶆爣蹇?renderResponse 鍜?responseComplete 鍙互鏀瑰彉鎵ц鐨勯『搴忋傛瘡涓楠ゆ墽琛屽畬鎴愬悗錛孡ifeCycle 媯鏌ヤ笂涓闃舵鏄惁璁劇疆浜嗚繖浜涙爣蹇椼傚鏋滆緗簡 responseComplete錛孡ifeCycle 鍒欏畬鍏ㄦ斁寮冭姹傜殑鎵ц銆傚鏋滅粡榪囨煇涓樁孌靛悗璁劇疆浜?renderResponse 鏍囧織錛孞SF 灝變細璺寵繃鍓╀笅鐨勯樁孌佃岀洿鎺ヨ繘鍏?Render Response 闃舵銆傚鏋滆繖涓や釜鏍囧織閮芥病鏈夎緗紝LifeCycle 灝變細鎸夐『搴忕戶緇墽琛屼笅涓姝ャ?br />
Composite 妯″紡

Composite 妯″紡璁╁鎴蜂唬鐮佽兘澶熺粺涓澶勭悊澶嶅悎瀵硅薄鍜屽熀鏈璞°傚鍚堝璞℃槸鍩烘湰瀵硅薄鐨勫鍣ㄣ傚湪絎竴闃舵錛圧estore View 闃舵錛夊拰鏈鍚庝竴涓樁孌碉紙Render Response 闃舵錛夛紝浣跨敤 JSF UI 緇勪歡鏋勯?UI View銆俇IComponentBase 灝辨槸 Composite 妯″紡涓?Component 鎶借薄綾葷殑涓涓緥瀛愩俇IViewRoot 鏄?Composite 綾伙紝鑰?UIOutput錛堟瘮鏂硅錛夊氨鏄彾瀛愶紙鎴栬呭熀鏈被錛夈俇IComponentBase 綾誨畾涔変簡鍙跺瓙鍜屽鍚堝璞$殑鍏叡鏂規硶錛屽緙栫爜/瑙g爜鍊煎拰瀛愯妭鐐圭鐞嗗嚱鏁般傚瓙鑺傜偣綆$悊鍑芥暟錛屽 getChildren錛屽浜庡彾瀛愯妭鐐硅繑鍥炵┖鍒楄〃錛屽浜庡鍚堣妭鐐瑰垯榪斿洖鍏跺瓙鑺傜偣銆?br />
Decorator 妯″紡

Decorator 妯″紡鐨勭洰鐨勬槸涓嶉氳繃瀛愮被鍖栧姩鎬佹墿灞曞璞$殑琛屼負銆侸SF 妗嗘灦鏈夊緢澶氭墿灞曠偣錛堝嵆鍙彃鍏ユ満鍒訛級銆侸SF 瀹炵幇鍙嬌鐢?Decorator 妯″紡鏇挎崲榛樿鐨?PropertyResolver銆乂ariableResolver銆丄ctionListener銆丯avigationHandler銆?ViewHandler 鎴?StateManager銆傞氬父鑷畾涔夊疄鐜版帴鍙楅氳繃鏋勯犲嚱鏁頒紶閫掔粰瀹冪殑榛樿瀹炵幇鐨勫紩鐢ㄣ傝嚜瀹氫箟瀹炵幇浠呬粎鏀瑰啓鍔熻兘鐨勪竴涓瓙闆嗭紝鑰屽皢鍏朵粬鍔熻兘濮旀墭緇欓粯璁ゅ疄鐜般?濡傛灉甯屾湜瀹炵幇鑷畾涔夌殑 ViewHandler錛屾敼鍐欓粯璁?ViewHandler 瀹炵幇鐨?calculateLocale 鏂規硶錛屽彲浠ュ儚 娓呭崟 1 閭f牱緙栧啓
 public class CustomViewHandler extends ViewHandler {  
public CustomViewHandler(ViewHandler handler) {
聽聽聽聽聽聽super();
聽聽聽聽聽聽oldViewHandler = handler;
聽聽聽聽聽聽}
聽聽聽聽聽private ViewHandler oldViewHandler = null;
聽聽聽聽聽聽public void renderView (facesContext context, UIViewRoot view) {
聽聽聽//delegate method to oldViewHandler
聽聽聽聽聽聽oldViewHandler.renderView(context, view);
聽聽聽聽聽聽}
聽聽聽聽聽聽//custom implementation of calculateLocale
聽聽聽聽聽聽public Locale calculateLocale(FacesContext context)
聽聽聽聽聽聽{
聽聽聽聽聽}
}

Strategy 妯″紡

Strategy 妯″紡鐨勭洰鐨勬槸灝佽涓嶅悓鐨勬蹇點侸SF 妗嗘灦閲囩敤 Strategy 妯″紡浣跨敤濮旀墭瀹炵幇妯″瀷鍛堢幇 UI 緇勪歡銆侸SF 鎶鏈敮鎸佷袱縐嶅憟鐜版ā鍨嬨傚湪鐩存帴瀹炵幇妯″瀷涓紝UI 緇勪歡瀵規敹鍒扮殑璇鋒眰涓殑鏁版嵁榪涜瑙g爜錛岀劧鍚庣紪鐮佽繖浜涙暟鎹繘琛屾樉紺恒傚湪濮旀墭瀹炵幇妯″瀷涓紝瑙g爜鍜岀紪鐮佹搷浣滃鎵樼粰鍜岀粍寤哄叧鑱旂殑涓撻棬鍛堢幇鍣ㄣ傚悗涓縐嶆ā鍨嬪埄鐢ㄤ簡 Strategy 璁捐妯″紡錛屾瘮鐩存帴瀹炵幇鏇寸伒媧匯傚湪 Strategy 妯″紡涓紝灝嗕笉鍚岀殑綆楁硶灝佽鍦ㄥ崟鐙殑瀵硅薄涓紝浠庤屽彲浠ュ姩鎬佸湴鏀瑰彉綆楁硶銆侸SF 瀹炵幇鍙互鐢ㄥ凡鏈夌殑 renderkit 瀹炰緥娉ㄥ唽鍙﹀鐨勫憟鐜板櫒錛屽綋搴旂敤紼嬪簭鍚姩鐨勬椂鍊欙紝JSF 瀹炵幇璇誨彇閰嶇疆鏂囦歡灝嗚繖浜涘憟鐜板櫒鍜?UI 緇勪歡鑱旂郴鍦ㄤ竴璧楓?br />
Template Method 妯″紡

Template Method 妯″紡鐨勭洰鐨勬槸灝嗗彉鍖栫殑姝ラ鎺ㄨ繜鍒板瓙綾諱腑錛岃屽湪鐖剁被涓畾涔夐偅浜涘浐瀹氱殑綆楁硶姝ラ銆侸SF 妗嗘灦閫氳繃 PhraseListeners 灞曠幇浜?Template Method 妯″紡鎻愪緵鐨勫姛鑳姐傞噰鐢?Template Method錛堟垨鑰?鈥渉ook鈥濓級浣垮緱 Web 浣滆呭彲浠ヤ負涓嶅悓闃舵涔嬮棿鐨勫彲閫夋楠ゆ彁渚涘疄鐜幫紝鑰屼富瑕侀樁孌典粛鐒跺拰 JSF 妗嗘灦鐨勫畾涔変竴鑷淬侸SF 妗嗘灦鎻愪緵浜?PhaseListeners錛屾蹇典笂綾諱技浜?Template Method 妯″紡涓殑鍙彉姝ラ銆侸SF 妗嗘灦鏈夊叚涓瀹氫箟鐨勯樁孌碉紝鍦ㄦ瘡涓樁孌典箣闂達紝Web 浣滆呭彲浠ュ疄鐜?PhaseListeners 鏉ユ彁渚涚被浼間簬 Template Method hook 鐨?hook銆備簨瀹炰笂錛岃繖縐嶇粨鏋勬瘮 Template Method 妯″紡鏇村叿鏈夋墿灞曟с傚彲浠ラ氳繃娉ㄥ唽 PhraseId 涓?ANY_PHRASE 鐨?PhaseListener 鍦ㄦ瘡涓樁孌靛悗鎻愪緵 hook銆傚鏋?PhaseId 鏄?ANY_PHASE錛孞SF 瀹炵幇灝變細鍦ㄦ瘡涓樁孌典箣鍓嶅拰涔嬪悗璋冪敤璇?PhaseListener銆侸SF 妗嗘灦涓殑瀹炵幇鐣ユ湁涓嶅悓錛屽洜涓哄彲浠ユ牴鏈病鏈?PhaseListener錛屼絾鏄湪 Template Method 妯″紡涓紝瀛愮被閫氬父閲嶆柊瀹氫箟鐖剁被涓娊璞$殑鍙彉姝ラ銆?br />
Observer 妯″紡

Observer 妯″紡鐨勭洰鐨勬槸褰撶洰鏍囧璞$殑鐘舵佹敼鍙樻椂鑷姩閫氱煡鎵鏈変緷璧栫殑瀵硅薄錛堝嵆瑙傚療鍣級銆侸SF 鍦?UI 緇勪歡涓疄鐜頒簡 Observer 妯″紡銆侸SF 鏈変袱綾誨唴寤轟簨浠訛細ActionEvent 鍜?ValueChangedEvent銆侫ctionEvent 鐢ㄤ簬紜畾鐢ㄦ埛鐣岄潰緇勪歡錛堝鎸夐挳錛夌殑嬋媧匯傚綋鐢ㄦ埛鍗曞嚮鎸夐挳鏃訛紝JSF 瀹炵幇閫氱煡娣誨姞鍒拌鎸夐挳涓婄殑涓涓垨澶氫釜鍔ㄤ綔鐩戝惉紼嬪簭銆備簬鏄鎸夐挳琚縺媧伙紝鎴栬呰鎸夐挳錛堜富浣擄級鐨勭姸鎬佹敼鍙樹簡銆傛坊鍔犲埌鎸夐挳涓婄殑鎵鏈夌洃鍚▼搴忥紙鍗寵瀵熷櫒錛夐兘鏀跺埌閫?鐭ヨ涓諱綋鐘舵佸凡緇忔敼鍙樸傜被浼肩殑錛屽綋杈撳叆 UI 緇勪歡涓殑鍊兼敼鍙樻椂錛孞SF 瀹炵幇閫氱煡 ValueChangeListener銆?br />
緇撴潫璇?/strong>

JSF 妗嗘灦鍒╃敤浜?Singleton銆丮odel-View-Controller銆丗actory Method銆丼tate銆丆omposite銆丏ecorator銆丼trategy銆乀emplate Method 鍜?Observer 璁捐妯″紡銆傚洜涓哄畠鐨勪綋緋葷粨鏋勫緩绔嬪湪宸茬粡楠岃瘉鐨勮璁℃ā寮忕殑鍩虹涓婏紝榪欐槸涓涓仴澹殑妗嗘灦錛屾ā寮忓湪 JSF 妗嗘灦涓緱


Masen 2007-03-30 17:30 鍙戣〃璇勮
]]>JSF甯哥敤鏍囩http://www.tkk7.com/masen/articles/107145.htmlMasenMasenThu, 29 Mar 2007 02:38:00 GMThttp://www.tkk7.com/masen/articles/107145.htmlhttp://www.tkk7.com/masen/comments/107145.htmlhttp://www.tkk7.com/masen/articles/107145.html#Feedback0http://www.tkk7.com/masen/comments/commentRss/107145.htmlhttp://www.tkk7.com/masen/services/trackbacks/107145.html 鏍囩 璇存槑 view 鍒涘緩欏跺眰瑙嗗浘 subview 鍒涘緩瑙嗗浘鐨勫瓙瑙嗗浘 facet 鍚戠粍浠舵坊鍔?facet param 鍚戠粍浠舵坊鍔犲弬鏁?/td> attribute 鍚戠粍浠舵坊鍔犲睘鎬?/td> actionListener 鍦ㄧ埗緇勪歡涓婃敞鍐屾搷浣滅洃鍚櫒 valueChangeListener 鍚戠埗緇勪歡娉ㄥ唽鍊煎彉鏇寸洃鍚櫒 converter 娉ㄥ唽浠繪剰杞崲鍣?/td> convertDateTime 娉ㄥ唽鏃ユ湡鏃墮棿杞崲鍣?/td> convertNumber 娉ㄥ唽鏁伴噺杞崲鍣?/td> validateLength 楠岃瘉緇勪歡鍊肩殑闀垮害 validateDoubleRange 楠岃瘉緇勪歡鍊肩殑鍙岀簿搴﹁寖鍥?/td> validateLongRange 楠岃瘉緇勪歡鍊肩殑闀挎暣鍨嬭寖鍥?/td> validator 鍚戠粍浠舵坊鍔犻獙璇佸櫒 loadBundle 鍔犺澆璧勬簮鍖?/td> verbatim 鍚戦〉闈腑娣誨姞鏍囩 selectItem 鎸囧畾 UISelectOne 鎴?UISelectMany 緇勪歡鐨勪竴涓」鐩?/td> selectItems 鎸囧畾 UISelectOne 鎴?UISelectMany 緇勪歡鐨勫涓」鐩?/td> 聽 聽 聽 聽



緇勪歡 鏍囩 璇存槑
UIForm form 琛ㄧず HTML琛ㄥ崟鍏冪礌
UIInput InputText 鍗曡鏂囨湰杈撳叆鎺т歡
inputTextarea 澶氳鏂囨湰杈撳叆鎺т歡
InputSecret 瀵嗙爜杈撳叆鎺т歡
inputHidden 闅愯棌瀛楁
UIOutput outputLabel 鏄劇ず鏂囨湰
outputLink 閾炬帴鍒板彟涓欏甸潰鎴栨煇欏甸潰涓婄殑鐗瑰畾浣嶇疆
outputFormat 鏄劇ず鏍煎紡鍖栫殑淇℃伅
outputText 褰撹鏂囨湰杈撳叆
UICommand commandButton 琛ㄧず涓涓寜閽?/td>
commandLink 琛ㄧず涓涓摼鎺?/td>
UISelectOne SelectOneListbox 鍗曢夊垪琛ㄦ
selectOneMenu 鍗曢夎彍鍗?/td>
selectOneRadio 鍗曢夋寜閽泦
UISelectBoolean selectBooleanCheckbox 鍗曚釜澶嶉夋
UISelectMany selectManyListbox 澶嶉夋闆?/td>
selectManyCheckbox 澶氳閫夋嫨鍒楄〃妗?/td>
selectManyMenu 澶氶夎彍鍗?/td>
UIPanel panelGrid 琛ㄧず涓 涓?HTML 琛ㄦ牸
panelGroup 緇勫悎涓緋誨垪緇勪歡
UIMessage message 鏄劇ず涓涓粍浠剁殑鏈榪戜嬌鐢ㄧ殑娑堟伅
messages 鏄劇ず鎵鏈夋秷鎭?/td>

UIGraphic
graphicImage 鏄劇ず涓涓浘鍍?/td>
UIData dataTable 鍔熻兘涓板瘜鐨勮〃鏍兼帶浠?/td>
UIColumn column 琛ㄧず琛ㄦ牸涓殑鍒?/td>
琛ㄥ崟 h:form 浜х敓 HTML form 鍏冪礌



Masen 2007-03-29 10:38 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 亚洲国产精品va在线播放| 亚洲三级视频在线| 免费在线视频你懂的| 18禁亚洲深夜福利人口| 国产亚洲精品观看91在线| 美女视频黄a视频全免费| 一级毛片人与动免费观看| 亚洲专区先锋影音| 亚洲А∨精品天堂在线| 国产在线jyzzjyzz免费麻豆| 丰满妇女做a级毛片免费观看| 久久免费视频观看| 亚洲自偷自偷在线成人网站传媒| 国产免费一区二区视频| 亚洲欧洲另类春色校园网站| 免费午夜爽爽爽WWW视频十八禁| 理论亚洲区美一区二区三区| 亚洲国产精品一区第二页| 成人免费a级毛片无码网站入口 | 亚洲综合中文字幕无线码| 亚洲视频人成在线播放| 在线观看免费人成视频| 国产精品免费在线播放| 亚洲乱妇熟女爽到高潮的片| 亚洲性天天干天天摸| 亚洲国产人成精品| 好大好硬好爽免费视频| 久久永久免费人妻精品下载| 一个人看的免费高清视频日本| 国产亚洲一区二区三区在线不卡| kk4kk免费视频毛片| 亚洲妇女熟BBW| 久久精品国产亚洲AV高清热| 亚洲五月综合缴情在线观看| 婷婷亚洲天堂影院| 国产高清免费在线| 色窝窝免费一区二区三区| 99久热只有精品视频免费观看17| 亚洲影视自拍揄拍愉拍| 久久精品国产亚洲AV嫖农村妇女 | 中文字幕av免费专区|