锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲欧美日韩中文高清www777,国产亚洲精品无码拍拍拍色欲,亚洲第一成年网站视频http://www.tkk7.com/hitlang/category/14251.html瀛︿互鑷寸敤zh-cnWed, 28 Feb 2007 08:20:26 GMTWed, 28 Feb 2007 08:20:26 GMT60JSP瀛︿範絎旇http://www.tkk7.com/hitlang/articles/71845.htmlliulangliulangMon, 25 Sep 2006 14:52:00 GMThttp://www.tkk7.com/hitlang/articles/71845.htmlhttp://www.tkk7.com/hitlang/comments/71845.htmlhttp://www.tkk7.com/hitlang/articles/71845.html#Feedback0http://www.tkk7.com/hitlang/comments/commentRss/71845.htmlhttp://www.tkk7.com/hitlang/services/trackbacks/71845.html 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 2004-9-27聽聽聽聽聽 鏄熸湡涓聽聽聽聽聽 鏅?/b>

JSP浠嬬粛

1.聽 姒傚喌
絳旓細1) 浠ユ枃鏈負鍩虹鑳藉榪斿洖鍔ㄦ佸唴瀹瑰埌瀹㈡埛绔?
聽聽聽 2) Http鏄姹傚拰鍝嶅簲鐨勯粯璁ゅ崗璁?
聽聽聽 3) 涓涓〉闈㈠彲浠ユ販鍜宧tml浠g爜銆丣ava浠g爜浠ュ強JSP鏍囩瓟;
聽聽聽 4) 鍏佽璁塊棶緇勪歡;

2.聽 JSP鐨勫ソ澶?br />絳旓細1) 閫氳繃緇勪歡浣跨敤鏀寔緇勪歡妯″瀷鍜岃蔣浠墮噸鐢?
聽聽聽 2) 婧愭枃浠舵敼鍙樿嚜鍔ㄧ紪璇?
聽聽聽 3) 鐢ㄦ埛鑷畾涔夋爣絳劇畝鍖栭〉闈㈠紑鍙?
聽聽聽 4) 鑳芥妸Web鍐呭, Java浠g爜鍒嗗紑(閽堝Servlet鑰岃█);
聽聽聽 5) 騫沖彴鏃犲叧;
聽聽聽 6) 鎬ц兘鍜屽彲鎵╁睍;
聽聽聽 7) 鍙潬;
聽聽聽 8) 浣滀負J2EE鐨勪竴閮ㄥ垎(Servlet銆丣SP浠ュ強EJB鏄疛2EE鐨勪笁澶х粍浠?銆?/b>

鍒涘緩銆侀厤緗互鍙婃墽琛孞SP

1.聽 JSP鐜
絳旓細1) 寮鍙戠幆澧?br />聽聽聽聽聽聽 a. 嫻忚鍣細IE/Netscape
聽聽聽聽聽聽 b. 寮鍙戝伐鍏鳳細璁頒簨鏈丼unOne Studio銆丣Builder銆乄SAD
聽聽聽 2) 閰嶇疆鍜屾墽琛岀幆澧?br />聽聽聽聽聽聽 a. Tomcat
聽聽聽聽聽聽 b. Weblogic
聽聽聽聽聽聽 c. Websphere
聽聽聽聽聽聽 d. SunONE Application Server

2. 絎竴涓狫SP欏甸潰
絳旓細1) 鑴氭湰灝忕▼搴?Scriptlet):
聽聽聽聽聽聽 瀵瑰簲浜嶴ervlet涓璼ervice鏂規硶涓唴瀹?br />聽聽聽聽聽聽 <%...%>鎴?lt;jsp:scriptlet></jsp:scriptlet>
聽聽聽 2) 鎸囦護(Directives)
聽聽聽聽聽聽 a. page
聽聽聽聽聽聽聽聽聽 <%@page import="java.util.*"%>鎴?lt;jsp:directive.page import="java.util.*"/>
聽聽聽聽聽聽 b. include
聽聽聽聽聽聽聽聽聽 <%@include file="footer.jsp"%>鎴?lt;jsp:directive.include file="footer.jsp"/>
聽聽聽 3) 澹版槑(Declarations)
聽聽聽聽聽聽 <%!String str="This is a string!";%>鎴?lt;jsp:declaration>str="This is a string!"</jsp:declaration>
聽聽聽 4) 琛ㄨ揪寮?Expressions)
聽聽聽聽聽聽 <%=str%>鎴?lt;jsp:expression>str</jsp:expression>

2004-9-28聽聽聽聽聽 鏄熸湡浜屄犅犅犅犅?鏅?/b>

鑴氭湰鍏冪礌

1.聽 鍦↗SP欏甸潰閫氳繃浠ヤ笅鑴氭湰鍏冪礌鍙敤浠ユ彃鍏ava浠g爜
絳旓細1) 澹版槑(Declarations)錛?lt;%! %>鎴?lt;jsp:declaration></jsp:declaration>
聽聽聽 2) 鑴氭湰灝忕▼搴?Scriptlet)錛?lt;%...%>鎴?lt;jsp:scriptlet></jsp:scriptlet>
聽聽聽 3) 琛ㄨ揪寮?Expressions)錛?lt;%=%>鎴?lt;jsp:expression></jsp:expression>
聽聽聽 4) 鎸囦護(Directives)錛?lt;%@%>鎴?lt;jsp:directive.type attribute />

2.聽 澹版槑(Declarations)
絳旓細1) 鍏佽瀹氫箟灝嗘彃鍏ュ埌Servlet綾葷殑涓諱綋涓?鐢眘ervice璋冪敤, 涓嶴ervice()鏂規硶騫崇駭)鐨勪竴浜涙柟娉曟垨鍩?
聽聽聽 2) 璇硶錛?br />聽聽聽聽聽聽 <%! Java浠g爜 %> 鎴?br />聽聽聽聽聽聽 <jsp:declaration></jsp:declaration>
聽聽聽 3) 紺轟緥錛?br />聽聽聽聽聽聽 a. 鍙橀噺瀹氫箟錛?br />聽聽聽聽聽聽聽聽聽 <%! int i=0;%>
聽聽聽聽聽聽 b. 鏂規硶瀹氫箟錛?br />聽聽聽聽聽聽聽聽聽 <%! public String f(int i){if(i<3) return("...");...}%>
聽聽聽 4) 澹版槑瑙勫垯錛?br />聽聽聽聽聽聽 a. JSP涓0鏄庣殑鍙橀噺鍜屾柟娉曞搴斾簬Servlet涓殑瀹炰緥鏂規硶鍜屽疄渚嬪彉閲忋傝繖浜涘皢琚悓鏃惰姹傝欏甸潰鐨勬墍鏈夌敤鎴鋒墍鍏變韓;
聽聽聽聽聽聽 b. 鍦ㄤ嬌鐢ㄥ彉閲忔垨鏂規硶鍓嶉』鍏堝畾涔?涓嶆槸璇村0鏄庡彉閲忕殑浣嶇疆鍦ㄩ〉闈腑瑕佸浜庝嬌鐢ㄥ彉閲忕殑鍓嶉潰錛岃屾槸鎸囧彉閲忎笉澹版槑涓嶈兘浣跨敤);
聽聽聽聽聽聽 c. 澹版槑鐨勫彉閲忔垨鏂規硶鐨勪綔鐢ㄥ煙涓哄綋鍓嶉〉闈㈡垨鍖呭惈鐨勯〉闈?
聽聽聽聽聽聽 d. 璇彞闂翠互鍒嗗彿鍒嗛殧銆?/b>

3.聽 鑴氭湰灝忕▼搴?Scriptlet)
絳旓細1) Java浠g爜鐗囨柇錛岃兘鎵ц姣旀爣璁拌璦鏇村己鐨勫姛鑳?br />聽聽聽 2) 璇硶錛?br />聽聽聽聽聽聽 <%...%>鎴?lt;jsp:scriptlet></jsp:scriptlet>
聽聽聽 3) 鑴氭湰灝忕▼搴忚鍒欙細
聽聽聽聽聽聽 a. 浣犱嬌鐢ㄧ殑鑴氭湰璇█鍐沖畾浜嗚剼鏈皬紼嬪簭鐨勮鍒?
聽聽聽聽聽聽 b. 璇彞闂翠互鍒嗗彿鍒嗛殧;
聽聽聽聽聽聽 c. 鍙互浣跨敤榛樿鐨勫璞°乮mport榪涚殑綾匯乨eclaration澹版槑鐨勬柟娉曞拰瀵硅薄浠ュ強useBean tag涓0鏄庣殑瀵硅薄銆?/b>

4.聽 琛ㄨ揪寮?Expression)
絳? 1) 鐢ㄦ潵灝嗗肩洿鎺ユ彃鍏ュ埌杈撳嚭涓?br />聽聽聽 2) 璇硶錛?br />聽聽聽聽聽聽 <%=%>鎴?lt;jsp:expression></jsp:expression>
聽聽聽 3) 琛ㄨ揪寮忚鍒欙細
聽聽聽聽聽聽 a. 浣犱嬌鐢ㄧ殑鑴氭湰璇█鍐沖畾浜嗚剼鏈皬紼嬪簭鐨勮鍒?
聽聽聽聽聽聽 b. 鎵ц鐨勯『搴忎負浠庡乏鍒板彸;
聽聽聽聽聽聽 c. 鍒嗗彿涓嶈兘鐢ㄤ簬琛ㄨ揪寮忋?/b>

5.聽 鎸囦護(Directive)
絳旓細1) Page: 瀹氫箟欏甸潰鐨勫叏灞灞炴?br />聽聽聽聽聽聽 璇硶錛?lt;%@page ...%>鎴?lt;jsp:directive.page .../>
聽聽聽 2) Include: 鎻掑叆涓涓潤鎬侀〉闈㈠唴瀹?br />聽聽聽聽聽聽 璇硶錛?lt;%@include file="header.jsp"%>鎴?lt;jsp:directive.include file="header.jsp"/>

6.聽 鎿嶄綔(Actions)
絳旓細1) forward鎿嶄綔錛氬皢璇鋒眰鎸囧悜涓涓壒瀹氱殑欏甸潰(綾諱技浜嶴ervlet涓殑RequestDispatcher);
聽聽聽聽聽聽 璇硶錛?lt;jsp:forward page="URL"/>
聽聽聽 2) include鎿嶄綔錛氬湪欏甸潰鎻掑叆鍔ㄦ佺殑鍐呭
聽聽聽聽聽聽 璇硶錛?lt;jsp:include page="URL" flush="true"/>
聽聽聽 3) plugin鎿嶄綔錛氬湪杈撳嚭欏甸潰宓屽叆涓涓璞?br />聽聽聽聽聽聽 璇硶錛?lt;jsp:plugin type="bean|applet" code="objectCode" codebase="objectCodebase">
聽聽聽聽聽聽聽聽聽聽聽聽 <jsp:params>
聽聽聽聽聽聽聽聽聽聽聽聽 ...
聽聽聽聽聽聽聽聽聽聽聽聽 </jsp:params>
聽聽聽聽聽聽聽聽聽聽聽聽 </jsp:plugin>
7.聽 娉ㄩ噴
絳旓細JSP涓湁浜岀綾誨瀷鐨勬敞閲婏細
聽聽聽 1) 鏈嶅姟鍣ㄧ娉ㄩ噴錛氫笉浼氶佸洖瀹㈡埛绔?br />聽聽聽聽聽聽 <%--this is a comment--%>
聽聽聽 2) 瀹㈡埛绔敞閲婏細鍙戦佸洖瀹㈡埛绔?br />聽聽聽聽聽聽 <!--comments-->

8.聽 JSP澶勭悊榪囩▼錛?br />絳旓細JSP婧愭枃浠跺鐞嗗垎鎴愪簩涓樁孌碉細
聽聽聽 1) JSP欏甸潰杞崲闃舵錛氶〉闈㈣緙栬瘧鎴愪竴涓狫ava綾伙紝鎵鏈夌殑HTML鏍囪鍜孞SP鏍囪閮借杞崲鍒涘緩涓涓猄ervlet銆傝繖鏃訛紝鑴氭湰鍜岃〃杈懼紡榪樻病鏈夎鎵ц;
聽聽聽 2) 璇鋒眰澶勭悊闃舵錛氬彂鐢熷湪鏈嶅姟鍣ㄥ皢涓涓鎴風璇鋒眰鎸囧悜JSP欏甸潰銆備竴涓姹傚璞″垱寤恒佽В鏋愪互鍙婃彁浜ょ粰緙栬瘧濂界殑JSP瀵瑰簲鐨剆ervlet銆傚綋榪欎釜servlet澶勭悊姹傛眰鐨勬椂鍊欏畠鎵ц鍏堝墠鍦↗SP涓畾涔夌殑澶勭悊鑴氭湰灝忕▼搴忓拰琛ㄨ揪寮忋?/b>

9.聽 浣跨敤鑴氭湰浠g爜鐨勭己鐐瑰拰鎸囧鏂歸拡
絳旓細1) 緙虹偣錛?br />聽聽聽聽聽聽 a. 榪囧害浣跨敤鑴氭湰浠g爜浣跨敤JSP欏甸潰娣蜂貢鍜岄毦浠ョ淮鎶?
聽聽聽聽聽聽 b. 鑴氭湰浠g爜闄嶄綆JSP浜屼釜涓昏鐨勪紭鐐癸細杞歡閲嶇敤鍜屼唬鐮佸垎寮
聽聽聽 2) 鎸囧鏂歸拡錛?br />聽聽聽聽聽聽 鍙湪緇勪歡鍔熻兘鏃犺兘涓哄姏鎴栭渶瑕佹湁闄愮殑鑴氭湰鏃朵嬌鐢ㄣ?br />2004-9-29聽聽聽聽聽 鏄熸湡涓壜犅犅犅犅?鏅?/strong>

浣跨敤鍙噸鐢ㄧ粍浠?/strong>

1.聽 JavaBeans
絳旓細1) JavaBeans鏄竴涓交渚跨殑銆佸鉤鍙版棤鍏崇殑銆佺敤Java鍐欑殑緇勪歡妯″瀷錛岀敤浠ュ垱寤哄彲閲嶇敤鐨勭粍浠?
聽聽聽 2) Beans鑳借緇勪歡鍒涘緩鍋ュ.銆佽法騫沖彴鐨勫簲鐢ㄧ▼搴忓拰灝忓簲鐢ㄧ▼搴忋?/strong>

2.聽 JSP鍜岀粍浠?br />絳旓細1) 鍦ㄩ渶瑕佺殑鏃跺欙紝JSP鍙互璁塊棶JavaBean鍜孍JB錛?br />聽聽聽 2) JSP浣跨敤action鏍囪鏉ヤ嬌鐢ㄣ佷慨鏀逛互鍙婂垱寤烘湇鍔″櫒绔璞?渚嬪Beans);

3.聽 JavaBean涓庝竴鑸琂ava綾葷殑鍖哄埆
絳旓細1) Bean綾誨繀欏誨叿鏈変笉甯﹀弬鏁扮殑鏋勯犲嚱鏁?
聽聽聽 2) Bean綾誨簲璇ユ病鏈変換浣曞叕鐢ㄥ疄渚嬪彉閲?鍩?;
聽聽聽 3) 閫氳繃get鍜宻et鏂規硶搴旇鑾峰緱涓鑷寸殑鍊箋?/strong>

4.聽 Bean鐨勫熀鏈敤娉?br />絳旓細1) 璋冪敤Bean
聽聽聽聽聽聽 璇硶錛?lt;jsp:useBean id="thread1" class="MyClass" type="Runnable"/>
聽聽聽聽聽聽聽聽聽聽聽聽 閫氬父鍙互璁や負絳変環浜庡皬鑴氭湰錛?br />聽聽聽聽聽聽聽聽聽聽聽聽 Runnable thread1 = new MyClass();
聽聽聽聽聽聽聽聽聽聽聽聽 浠ヤ笂浠g爜鎰忓懗鐫浠呭綋涓嶅瓨鍦ㄥ叿鏈夌浉鍚宨d鍜宻cope鐨勫璞℃椂瀹炰緥鍖朿lass鎵鎸囧畾鐨勭被瀵硅薄錛屽茍灝嗗叾緇戝畾鍒扮敱id鎸囧畾鍚嶇О鐨勫彉閲?br />聽聽聽 2) 璁塊棶Bean鐨勫睘鎬?br />聽聽聽聽聽聽 璇硶錛?lt;jsp:getProperty name="book1" property="title"/> 鎴栬?br />聽聽聽聽聽聽聽聽聽聽聽聽 <%=book1.getTitle()%>
聽聽聽 3) 璁劇疆Bean鐨勫睘鎬?br />聽聽聽聽聽聽 a. 綆鍗曟儏鍐?br />聽聽聽聽聽聽聽聽聽 璇硶錛?lt;jsp:setProperty name="book1" property="title" value="Core Servlets and JavaServer Page"/> 鎴栬?lt;%book1.setTitle("Core Servlets and JavaServer Page");%>
聽聽聽聽聽聽 b. 浣跨敤JSP琛ㄨ揪寮忎綔涓簐alue鍙傛暟
聽聽聽聽聽聽聽聽聽 璇硶錛?lt;jsp:setProperty
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 name="entry"
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 property="itemID"
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 value='<%=request.getParameter("itemID")%>'/>
聽聽聽聽聽聽 c. 寤虹珛涓埆灞炴т笌杈撳叆鍙傛暟涔嬮棿鐨勫叧鑱?br />聽聽聽聽聽聽聽聽聽 璇硶錛?lt;jsp:setProperty
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 name="entry"
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 property="numItems"
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 param="numItems"/> //浣跨敤param鎸囧畾杈撳叆鍙傛暟錛屾鍙傛暟鍊艱嚜鍔ㄧ敤浣滆灞炴у鹼紝騫惰嚜鍔ㄦ墽琛岀畝鍗曠殑綾誨瀷杞崲
聽聽聽聽聽聽 d. 寤虹珛鎵鏈夊睘鎬т笌杈撳叆鍙傛暟涔嬮棿鐨勫叧鑱?br />聽聽聽聽聽聽聽聽聽 璇硶錛?lt;jsp:setProperty
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 name="entry"
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 property="*"/>
聽聽聽聽聽聽聽聽聽 闇瑕佹敞鎰忥細i : 褰撹緭鍏ュ弬鏁伴仐澶辨椂錛屼笉鎵ц浠諱綍鎿嶄綔錛岀郴緇熶笉浼氭彁渚沶ull浣滀負灞炴у?
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 ii: 鏃犳硶瀹屾垚鍊肩被鍨嬩負double鐨勫睘鎬х殑綾誨瀷杞崲;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 iV: 鍦ㄤ嬌鐢ㄨ嚜鍔ㄧ被鍨嬭漿鎹㈡椂錛岄渶瑕佽冭檻閿欒澶勭悊欏甸潰;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 v : 灞炴у悕鍜岃緭鍏ュ弬鏁板繀欏誨畬鍏ㄥ尮閰嶃?/strong>

5.聽 鍏變韓Bean
絳旓細1) scope浣滅敤鍩燂細
聽聽聽聽聽聽 a. page聽聽聽聽聽聽 : 榛樿鍊鹼紝琛ㄦ槑Bean瀵硅薄闄や簡琚粦瀹氬埌灞閮ㄥ彉閲忥紝榪樺皢浣嶄簬PageContext瀵硅薄涓?
聽聽聽聽聽聽 b. application: 琛ㄦ槑Bean瀵硅薄闄や簡琚粦瀹氬埌灞閮ㄥ彉閲忥紝榪樺皢浣嶄簬ServletContext瀵硅薄涓?
聽聽聽聽聽聽 c. session聽聽聽 : 琛ㄦ槑Bean瀵硅薄闄や簡琚粦瀹氬埌灞閮ㄥ彉閲忥紝榪樺皢浣嶄簬褰撳墠璇鋒眰鐩稿叧鐨凥ttpSession瀵硅薄涓?
聽聽聽聽聽聽 d. request聽聽聽 : 琛ㄦ槑Bean瀵硅薄闄や簡琚粦瀹氬埌灞閮ㄥ彉閲忥紝榪樺皢浣嶄簬ServletRequest瀵硅薄涓?
聽聽聽 2) 璋冪敤Bean鐨勬柟寮忥細
聽聽聽聽聽聽 <jsp:useBean ...>
聽聽聽聽聽聽 璇彞(浠呭綋鍒涘緩Bean鑰屼笉鏄嬌鐢ㄧ幇鏈塀ean鏃舵墠琚墽琛?
聽聽聽聽聽聽 </jsp:useBean>

2004-9-30聽聽聽聽聽 鏄熸湡鍥浡犅犅犅犅?鏅?/strong>

澶勭悊寮傚父

1.聽 榪愯鏃跺紓甯?br />絳旓細1) 涓涓▼搴忚繍琛屾椂閲嶈幏鐨勯敊璇?
聽聽聽 2) 鑳借涓鍥烘湁鐨勫紓甯稿璞″紩鐢ㄦ墍浣跨敤;
聽聽聽 3) 鍙互鍒╃敤寮傚父寮曠敤鍒涘緩鎴栦駭鐢熶竴涓狫SP欏甸潰鏄劇ず寮傚父淇℃伅緇欑敤鎴楓?/strong>

2.聽 鍒涘緩涓涓紓甯歌窡韙柟妗?br />絳旓細1) 鍦ㄦ瘡涓涓狫SP欏甸潰錛屽寘鍚鍒涘緩鐨勫紓甯擱〉闈㈠悕縐?
聽聽聽聽聽聽 <
%@page import="numberguess.NumberGuessBean" errorPage="error.jsp"%>
聽聽聽 2) 鍒涘緩涓涓紓甯擱〉闈?
聽聽聽聽聽聽 <
%@page isErrorPage="true"%>

3.聽 JSP欏甸潰涓殑寮傚父澶勭悊
絳旓細1) <%=exception.toString()%>聽聽聽聽聽聽聽 鎵撳嵃寮傚父鍚嶇О;
聽聽聽 2) <%exception.printStackTrace();%> 鎵撳嵃褰撳墠閿欒嫻佷腑鎵鏈夐敊璇殑鍒楄〃;
聽聽聽 3) <%=exception.getMessage()%>聽聽聽聽聽 鎵撳嵃閿欒鐨勮緇嗘弿榪頒俊鎭?/strong>

鏇撮珮綰х殑涓婚

1.聽 JSP涓粰璁ょ殑鍐呭湪瀵硅薄
絳旓細鍚嶇О聽聽聽聽聽聽聽聽 綾誨瀷聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 娉ㄩ噴鍜岃寖鍥?br />聽聽聽 request聽聽聽聽聽 javax.servlet.http.HttpServletRequest聽聽聽 request
聽聽聽 response聽聽聽聽 javax.servlet.http.HttpServletResponse聽聽 response
聽聽聽 pageContext聽 javax.servlet.jsp.PageContext聽聽聽聽聽聽聽聽聽聽聽 page
聽聽聽 session聽聽聽聽聽 javax.servlet.http.HttpSession聽聽聽聽聽聽聽聽聽聽 session
聽聽聽 application聽 javax.servlet.ServletContext聽聽聽聽聽聽聽聽聽聽聽聽 ServletContext
聽聽聽 out聽聽聽聽聽聽聽聽聽 javax.servlet.jsp.JspWriter聽聽聽聽聽聽聽聽聽聽聽聽聽 output stream
聽聽聽 config聽聽聽聽聽聽 javax.servlet.ServletConfig聽聽聽聽聽聽聽聽聽聽聽聽聽 ServletConfig
聽聽聽 page聽聽聽聽聽聽聽聽 javax.lang.Object聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 page
聽聽聽 Exception聽聽聽 java.lang.Throwable聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 page

2.聽 榛樿瀵硅薄涔嬭姹?request)
絳旓細灝佽浜嗘潵鑷鎴風鐨勮姹傦細
聽聽聽 鏂規硶錛?) getCookies: 鍙栧緱Cookie鏁扮粍;
聽聽聽聽聽聽聽聽聽 2) getMethod: 榪斿洖璇鋒眰褰㈡垚鐨勬柟寮?GET/POST);
聽聽聽聽聽聽聽聽聽 3) getParameterNames: 榪斿洖form涓璞″悕縐扮殑鏋氫婦;
聽聽聽聽聽聽聽聽聽 4) getParameter錛氳繑鍥炴寚瀹氬悕縐扮殑瀵硅薄鍊?
聽聽聽聽聽聽聽聽聽 5) getParameterValues: 榪斿洖鎸囧畾鍚嶇О鐨勫璞″兼暟緇?
聽聽聽聽聽聽聽聽聽 6) setAttribute: 璁劇疆灞炴?
聽聽聽聽聽聽聽聽聽 7) getAttribute: 榪斿洖灞炴у?
聽聽聽聽聽聽聽聽聽 8) getAttributeNames: 榪斿洖灞炴у悕縐扮殑鏋氫婦

3.聽 榛樿瀵硅薄涔媜ut
絳旓細JSPWriter鐨勪竴涓疄渚? 鐢ㄤ簬鍙戦佸搷搴旂粰瀹㈡埛绔?br />聽聽聽 鏂規硶錛?) print(String)/println(String)
聽聽聽聽聽聽聽聽聽 2) print(int)/println(int)
聽聽聽聽聽聽聽聽聽 3) flush()

4.聽 榛樿瀵硅薄涔媏xception
絳旓細1) 鐢ㄤ簬寮傚父瀵硅薄鐨勫紓甯稿疄渚?
聽聽聽 2) 寮傚父欏甸潰鍦╬age鎸囦護涓瓨鍦ㄥ睘鎬sErrorPage="true";
聽聽聽 3) 鏂規硶錛歡etMessage()/printStackTrace()/toString()

5.聽 榛樿瀵硅薄涔媠ession
絳旓細1) HttpSession鐨勪竴涓疄渚? 鐢ㄤ簬鍦ㄤ竴涓猻ession涓繚鎸佺姸鎬?br />聽聽聽 2) 鏂規硶錛歡etAttribute()
聽聽聽聽聽聽聽聽聽聽聽聽 setAttribute()
聽聽聽聽聽聽聽聽聽聽聽聽 removeAttribute()
聽聽聽聽聽聽聽聽聽聽聽聽 getAttributeNames()

6.聽 榛樿瀵硅薄涔媋pplication
絳旓細1) ServletContext涓涓疄渚嬶紝鐢ㄤ簬淇濇寔application鐨勭姸鎬?br />聽聽聽 2) 鏂規硶錛歡etAttribute()
聽聽聽聽聽聽聽聽聽聽聽聽 setAttribute()
聽聽聽聽聽聽聽聽聽聽聽聽 getInitParameter()
聽聽聽聽聽聽聽聽聽聽聽聽 getServletInfo()
聽聽聽 3) application鐨勪綔鐢ㄥ煙姣攕ession澶у緱澶氾紝涓涓猻ession鍜屼竴涓猚lient鑱旂郴, 鑰宎pplication淇濇寔浜嗙敤浜庢墍鏈夊鎴風鐨勭姸鎬?/strong>

2004-10-8聽聽聽聽聽 鏄熸湡鍥浡犅犅犅犅?鏅綽犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅?

鑷畾涔夋爣絳懼簱(涓?

1.聽 浠涔堟槸鑷畾涔夋爣絳?br />絳旓細1) 鐢ㄦ埛鑷畾涔夌殑Java璇█鍏冪礌, 瀹炶川鏄繍琛屼竴涓垨鑰呬袱涓帴鍙g殑JavaBean;
聽聽聽 2) 鍙互闈炲父鏈哄瘑鍦板拰JSP鐨勮〃紺洪昏緫鑱旂郴鍦ㄤ竴璧鳳紝鍙堝叿鏈夊拰鏅欽avaBean鐩稿悓鐨勪笟鍔¢昏緫澶勭悊鑳藉姏;
聽聽聽 2) 褰撲竴涓狫SP欏甸潰杞彉涓簊ervlet鏃訛紝鍏墮棿鐨勭敤鎴瘋嚜瀹氫箟鏍囩杞寲涓烘搷浣滀竴涓О涓烘爣絳緃ander鐨勫璞?
聽聽聽 3) 鍙搷浣滈粯璁ゅ璞★紝澶勭悊琛ㄥ崟鏁版嵁錛岃闂暟鎹簱浠ュ強鍏跺畠浼佷笟鏈嶅姟;聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽

2.聽 鑷畾涔夋爣絳懼簱鐨勭壒鐐?br />絳旓細1) 閫氳繃璋冪敤欏甸潰浼犻掑弬鏁板疄鐜板畾鍒?
聽聽聽 2) 璁塊棶鎵鏈夊JSP欏甸潰鍙兘鐨勫璞?
聽聽聽 3) 淇敼璋冪敤欏甸潰鐢熸垚鐨勫搷搴?
聽聽聽 4) 鑷畾涔夋爣絳鵑棿鍙浉浜掗氫俊;
聽聽聽 5) 鍦ㄥ悓涓涓狫SP欏甸潰涓氳繃鏍囩宓屽錛屽彲瀹炵幇澶嶆潅浜や簰銆?/strong>

3.聽 濡備綍浣跨敤鑷畾涔夋爣絳懼簱
絳旓細1) 澹版槑鏍囩搴?br />聽聽聽 2) 浣挎爣絳懼簱鎵ц瀵筗eb搴旂敤紼嬪簭鍙敤

4.聽 澹版槑鏍囩搴?br />絳旓細1) 浣跨敤taglib鎸囦護澹版槑鏍囩搴?br />聽聽聽 2) 璇硶錛?lt; %@taglib uri="URI" prefix="pre" %>
聽聽聽聽聽聽 娉ㄦ剰錛歛. uri灞炴у彲浠ユ槸緇濆鐨勶紝涔熷彲浠ユ槸鐩稿URL錛岃URL鎸囧悜鏍囪搴撴弿榪扮(TLD)鏂囦歡;
聽聽聽聽聽聽聽聽聽聽聽聽 b. uri灞炴т篃鍙互鏄竴涓茍涓嶅瓨鍦ㄧ殑URL錛岃URL涓簑eb.xml鏂囦歡涓皢鏍囪搴撴弿榪扮(TLD)鏂囦歡鐨勭粷瀵筓RL鍒版湰鍦扮郴緇熺殑涓涓槧灝?
聽聽聽 3) 鑼冧緥錛?lt;
%@taglib uri="/WEB-INF/template.tld" prefix="test" %>
聽聽聽聽聽聽聽聽聽聽聽聽 <
%@taglib uri=" http://java.sun.com/jstl/core " prefix="core" %>聽聽聽聽聽聽

5.聽 浣挎爣絳懼簱鎵ц鍙敤
絳旓細鏂瑰紡涓錛氬湪WEB-INF/classes鐩綍涓嬮儴緗叉爣璁板鐞嗙▼搴忕被;
聽聽聽 鏂瑰紡浜岋細灝嗘爣璁板鐞嗙▼搴忕被鎵撳寘鎴恓ar鏂囦歡騫剁疆浜嶹EB-INF/lib鐩綍銆?/strong>

6.聽 鍑犵鍏稿瀷鐨勬爣絳?鐤戦棶錛氬彲浠ユ湁甯︿富浣撹屾病鏈夊睘鎬х殑鏍囩涔堬紵)
絳旓細1) 涓嶅甫灞炴у拰涓諱綋鐨勭畝鍗曟爣絳撅細<mytaglibs:SomeTag/>;
聽聽聽 2) 涓嶅甫涓諱綋浣嗘湁灞炴х殑鏍囩錛?lt;mytaglibs:SomeTag user="TonyDeng"/>;
聽聽聽 3) 甯︽湁涓諱綋鍜屽睘鎬х殑鏍囩錛?lt;mytaglibs:SomeTag user="TonyDeng">
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 ...// 鏍囩浣?br />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 </mytaglibs:SomeTag>;
聽聽聽 娉ㄦ剰錛歛. 灞炴у垪浜巗tart tag涓紝瀹冩槸鍦ㄦ爣璁板簱鎻忚堪絎?TLD)鏂囦歡涓寚瀹氾紝鏈嶅姟浜庢爣璁板簱鐨勮嚜瀹氫箟琛屼負;
聽聽聽聽聽聽聽聽聽 b. 鏍囩浣撲綅浜巗tart tag鍜宔nd tag闂達紝鍙互鏄換浣曞悎娉曠殑JSP鍐呭鎴栬呮爣絳?

7.聽 瀹氫箟鏍囩
絳旓細1) 寮鍙戝疄鐜皌ag鐨勭被(tag handler);
聽聽聽 2) 緙栬緫鏍囪搴撴弿榪扮(TLD)鏂囦歡;
聽聽聽 3) 鍦╳eb.xml涓負鏍囪搴撴弿榪扮(TLD)鏂囦歡鐨勭粷瀵筓RL寤虹珛涓涓槧灝?璇ユ楠ゅ彲閫?;

8.聽 鏍囪搴撴弿榪扮(TLD)鏂囦歡
絳旓細1) 涓涓弿榪版爣璁板簱鐨刋ML鏂囦歡;
聽聽聽 2) 鍐呭寮濮嬫槸鏁翠釜搴撶殑鎻忚堪錛岀劧鍚庢槸tag鐨勬弿榪?
聽聽聽 3) 鏍囪搴撴弿榪扮(TLD)鏂囦歡鐢ㄤ簬Web Container紜tag浠ュ強JSP欏甸潰鍙戝睍宸ュ叿;

9.聽 瀹炵幇tag鐨勭被(tag handler)
絳旓細1) 鏄竴浜涘湪寮曠敤浜嗘爣絳劇殑JSP欏甸潰鎵ц鏈熼棿琚玏eb Container璋冪敤浠ユ眰鑷畾涔夋爣絳懼肩殑瀵硅薄;
聽聽聽 2) 蹇呴』瀹炵幇Tag, SimpleTag鍜孊odyTag涔嬩竴;
聽聽聽 3) 鍙互緇ф壙TagSupport鍜孊odyTagSupport涔嬩竴銆?/strong>

10. 鏍囩搴撶殑鎺ュ彛鍜岀被鐨勭戶鎵垮叧緋?br />絳旓細琛ㄧ幇褰㈠紡涓錛?br />聽聽聽 a. 鎺ュ彛鐨勭戶鎵垮叧緋伙細
聽聽聽聽聽聽 鈽?interface javax.servlet.jsp.tagext.JspTag
聽聽聽聽聽聽聽聽聽 鈽?interface javax.servlet.jsp.tagext.SimpleTag
聽聽聽聽聽聽聽聽聽 鈽?interface javax.servlet.jsp.tagext.Tag
聽聽聽聽聽聽聽聽聽聽聽聽 鈽?interface javax.servlet.jsp.tagext.IterationTag
聽聽聽聽聽聽聽聽聽聽聽聽 鈽?interface javax.servlet.jsp.tagext.BodyTag
聽聽聽 b. 綾葷殑緇ф壙鍏崇郴錛?br />聽聽聽聽聽聽 鈽?class javax.servlet.jsp.tagext.TagSupport (implements javax.servlet.jsp.tagext.IterationTag, java.io.Serializable)
聽聽聽聽聽聽聽聽聽 鈽?class javax.servlet.jsp.tagext.BodyTagSupport (implements javax.servlet.jsp.tagext.BodyTag)
聽聽聽聽聽聽 鈽?class javax.servlet.jsp.tagext.SimpleTagSupport (implements javax.servlet.jsp.tagext.SimpleTag)
聽聽聽 琛ㄧ幇褰㈠紡浜岋細
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 (Interface)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 JspTag
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 鈫?br />聽聽聽聽聽聽聽聽聽聽聽聽聽 |藟藟藟藟藟藟藟藟|聽聽聽
聽聽聽聽聽聽聽聽 (Interface)聽聽聽聽聽 (Interface)
聽聽聽聽聽聽聽聽聽聽聽聽 Tag聽聽聽聽聽聽聽聽聽聽 SimpleTag 鈫愶紞錛峉impleTagSupport
聽聽聽聽聽聽聽聽聽聽聽聽聽 鈫懧犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅?
聽聽聽聽聽聽聽聽聽聽聽聽聽 |聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽 (Interface)聽
聽聽聽聽聽聽聽聽 IterationTag鈫愶紞錛峊agSupport
聽聽聽聽聽聽聽聽聽聽聽聽聽 鈫懧犅犅犅犅犅犅犅犅犅犅犅犅犅犅?鈫?br />聽聽聽聽聽聽聽聽聽聽聽聽聽 |聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 |
聽聽聽聽聽聽聽聽 (Interface)聽聽聽聽聽聽聽聽聽聽聽 |
聽聽聽聽聽聽聽聽聽聽 BodyTag聽聽 鈫愶紞錛岯odyTagSupport

聽聽聽 鏍囩鎺ュ彛鏂規硶涓瑙堣〃

聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 (Interface)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 JspTag(娌℃湁鏂規硶)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 鈫?br />聽聽聽聽聽聽聽聽聽聽聽聽聽 |藟藟藟藟藟藟藟藟|聽聽聽
聽聽聽聽聽聽聽聽 (Interface)聽聽聽聽聽 (Interface)
聽聽聽聽聽聽聽聽聽聽聽聽 Tag聽聽聽聽聽聽聽聽聽聽 SimpleTag
聽聽聽聽聽聽聽聽聽聽聽聽聽 鈫懧犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅?
聽聽聽聽聽聽聽聽聽聽聽聽聽 |聽聽聽聽聽聽聽聽 (int doEndTag()銆乮nt doStartTag()銆乀ag getParent()銆乿oid release()銆乿oid setPageContext(PageContext pc)銆乿oid setParent(Tag t))
聽聽聽聽聽聽聽聽 (Interface)聽
聽聽聽聽聽聽聽聽 IterationTag聽聽 (int doAfterBody())

聽聽聽聽聽聽聽聽聽聽聽聽聽 鈫懧犅犅?
聽聽聽聽聽聽聽聽聽聽聽聽聽 |聽聽聽聽
聽聽聽聽聽聽聽聽 (Interface)
聽聽聽聽聽聽聽聽聽聽 BodyTag聽聽聽聽聽 (void doInitBody()銆乿oid setBodyContent(BodyContent b))

2004-10-9聽聽聽聽聽 鏄熸湡鍥浡犅犅犅犅?鏅綽犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅?

鑷畾涔夋爣絳懼簱(涓?

11. 涓涓猅ag澶勭悊紼嬪簭綾誨繀欏誨疄鐜扮殑鏂規硶
絳旓細鏍囩澶勭悊紼嬪簭綾誨瀷聽聽聽聽聽聽聽聽聽聽聽 鏂規硶
聽聽聽 Simple聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 doStartTag, doEndTag, release
聽聽聽 Attributes聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 doStartTag, doEndTag, set/getAttribute...release
聽聽聽 Body,No Itrative and聽聽聽聽聽聽聽 doStartTag, doEndTag, release
聽聽聽 Evaluation聽
聽聽聽 Body, Itrative Evaluation聽聽 doStartTag, doAterTag, doEndTag, release
聽聽聽 Body, Interaction聽聽聽聽聽聽聽聽聽聽 doStartTag, doEndTag, release, doInitbody, doAfterBody

12. 綆鍗曠殑鏍囩澶勭悊紼嬪簭綾?br />絳旓細1) 蹇呴』瀹炵幇Tag鎺ュ彛鐨刣oStartTag()鍜宒oEndTag()鏂規硶;
聽聽聽 2) 鍥犱負涓嶅瓨鍦˙ody錛宒oStartTag()鏂規硶蹇呴』榪斿洖SKIP_BODY;
聽聽聽 3) 濡傚叾浣欓〉闈㈣鎵ц錛宒oEndTag()鏂規硶榪斿洖EVAL_PAGE, 鍚﹀垯榪斿洖SKIP_PAGE;
聽聽聽 4) 瀵逛簬姣忎竴涓爣絳懼睘鎬э紝浣犲繀欏誨湪鏍囩澶勭悊紼嬪簭綾婚噷瀹氫箟涓涓壒鎬т互鍙奼et鍜宻et鏂規硶浠ヤ竴鑷翠簬JavaBeans浣撶郴鎯緥

13. 甯ody鐨勮嚜瀹氫箟鏍囩
絳旓細1) 蹇呴』瀹炵幇Tag鎺ュ彛鐨刣oStartTag()鍜宒oEndTag()鏂規硶;
聽聽聽 2) 鍙互瀹炵幇IterationTag鎺ュ彛鐨刣oAfterBody()鏂規硶;
聽聽聽 3) 鍙互瀹炵幇BodyTag鎺ュ彛鐨刣oInitBody鍜宻etBodyContent鏂規硶;
聽聽聽 4) doStartTag鏂規硶鍙互榪斿洖SKIP_BODY銆丒VAL_BODY_INCLUDE銆佹垨鑰匛VAL_BODY_BUFFERED(褰撲綘鎯充嬌鐢˙odyContent);
聽聽聽 5) doEndTag鏂規硶鍙互榪斿洖SKIP_PAGE鎴朎VAL_PAGE;
聽聽聽 6) doAfterBody鏂規硶鍙互榪斿洖EVAL_BODY_AGAIN, SKIP_BODY;

14. 瀹氫箟鑴氭湰鍙橀噺鐨勬爣絳?榪唬鐨勬爣絳懼簱)
絳旓細1) 瀹氫箟鑴氭湰鏍囩鐨勪簩涓楠?
聽聽聽聽聽聽 a. 鍦ㄦ爣璁板簱鎻忚堪絎?TLD)鏂囦歡涓垪鏄庤剼鏈彉閲?
聽聽聽聽聽聽 b. 瀹氫箟鏍囩鎵╁睍淇℃伅綾?TEI)騫朵笖鍦═LD鏂囦歡涓寘鎷繖涓被鍏冪礌(tei-class);
聽聽聽 2) 鍙橀噺蹇呴』鍦ㄦ爣絳懼鐞嗙▼搴忕被涓嬌鐢╬ageContext.setAttribute()鏂規硶璁劇疆;
聽聽聽 3) 鏍囩鎵╁睍淇℃伅綾?TEI)蹇呴』緇ф壙TagExtraInfo浠ュ強瑕嗙洊getVariableInfo()鏂規硶;
聽聽聽 4) 鍙橀噺鐨勮寖鍥村彲浠ユ槸AT_BEGIN, NESTED, AT_END(鏍囩鎵╁睍淇℃伅綾?TEI)鐨刅ariableInfo涓畾涔?涔嬩竴;

15. 鑴氭湰鍙橀噺鐨勬湁鏁堟?br />絳旓細鍙橀噺聽聽聽聽 |聽聽 鏈夋晥鎬犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅犅?
聽聽聽 ---------------------------------------
聽聽聽 NESTED聽聽 | 鏍囩涓殑鍙傛暟鍦╯tarttag鍒癳ndtag涔嬮棿鏄湁鏁堢殑
聽聽聽 AT_BEGIN | 鏍囩涓殑鍙傛暟鍦ㄦ爣絳劇殑寮濮嬪埌JSP欏甸潰緇撴潫鏄湁鏁堢殑
聽聽聽 AT_END聽聽 | 鏍囩涓殑鍙傛暟鍦ㄦ爣絳劇殑緇撴潫鍒癑SP欏甸潰緇撴潫鏄湁鏁堢殑

2004-10-10聽聽聽聽 鏄熸湡鍥浡犅犅犅犅?鏅?

16.聽 Tag鎺ュ彛鐨勬柟娉?br />絳旓細interface javax.servlet.jsp.tagext.Tag
聽聽聽 ------------------------------------------------------
聽聽聽 +EVAL_BODY_INCLUDE:int
聽聽聽 +EVAL_PAGE:int
聽聽聽 +SKIP_BODY:int
聽聽聽 +SKIP_PAGE:int
聽聽聽 ------------------------------------------------------
聽聽聽 +release():void
聽聽聽 +getParent():javax.servlet.jsp.tagext.Tag
聽聽聽 +setParent(javax.servlet.jsp.tagext.Tag):void
聽聽聽 +doEndTag():int
聽聽聽 +doStartTag():int
聽聽聽 +setPageContext(javax.servlet.jsp.PageContext):void

17.聽 Tag鐨勭敓鍛藉懆鏈?br />絳旓細1) setPageContext(javax.servlet.jsp.PageContext):void
聽聽聽 2) setParent(javax.servlet.jsp.tagext.Tag):void
聽聽聽 3) //setAttribute:void
聽聽聽 4) doStartTag():int
聽聽聽 5) doEndTag():int
聽聽聽 6) release():void

18.聽 BodyTag鍜孴ag鎺ュ彛鐨勫叧緋?br />絳旓細interface javax.servlet.jsp.tagext.BodyTag聽聽聽聽聽 -->聽聽聽聽 interface javax.servlet.jsp.tagext.Tag
聽聽聽 ------------------------------------------
聽聽聽 +EVAL_BODY_AGAIN:int
聽聽聽 ------------------------------------------
聽聽聽 +doInitBody():void
聽聽聽 +setBodyContent(javax.servlet.jsp.tagext.BodyContext):void
聽聽聽 +doAfterBody():int

19.聽 BodyTag鐨勫鐞嗚繃紼?br />絳旓細1) setPageContext(javax.servlet.jsp.PageContext):void
聽聽聽 2) setParent(javax.servlet.jsp.tagext.Tag):void
聽聽聽 3) //setParent()
聽聽聽 4) doStartTag():int
聽聽聽 5) setBodyContent(javax.servlet.jsp.tagext.BodyContent):void
聽聽聽 6) doInitBody():void
聽聽聽 7) doAfterBody():int
聽聽聽 8) doEndTag():int
聽聽聽 9) release():void

20.聽 SimpleTag鎺ュ彛鐨勬柟娉?br />絳旓細javax.servlet.jsp.tagext.SimpleTag
聽聽聽 ------------------------------------------
聽聽聽 +doTag():void
聽聽聽 +getParent():JspTag
聽聽聽 +setJspBody(JspFragment jspBody):void
聽聽聽 +setJspContext(JspContext pc):void
聽聽聽 +setParent(JspTag parent):void

21.聽 SimpleTage鎺ュ彛鐨勭敓鍛藉懆鏈?br />絳旓細1) new:
聽聽聽聽聽聽 姣忔閬囧埌鏍囩錛屽鍣ㄦ瀯閫犱竴涓猄impleTag鐨勫疄渚嬶紝榪欎釜鏋勯犳柟娉曟病鏈夊弬鏁般傚拰綰㈠吀鐨勬爣絳句竴鏍鳳紝SimpleTag涓嶈兘緙撳啿錛屾晠涓嶈兘閲嶇敤錛屾瘡嬈¢兘闇瑕佹瀯閫犳柊鐨勫疄渚嬨?br />聽聽聽 2) setJspContext()銆乻etParent(): 鍙湁榪欎釜鏍囩鍦ㄥ彟涓涓爣絳句箣鍐呮椂錛屾墠璋冪敤setParent()鏂規硶;
聽聽聽 3) 璁劇疆灞炴э細璋冪敤姣忎釜灞炴х殑setter鏂規硶;
聽聽聽 4) setJspBody();
聽聽聽 5) doTag(): 鎵鏈夋爣絳劇殑閫昏緫銆佽凱浠e拰Body璁$畻錛岄兘鍦ㄨ繖涓柟娉曚腑;
聽聽聽 6) return

2004-10-11聽聽聽聽 鏄熸湡浜斅犅犅犅犅?鏅?


聽聽聽聽聽聽
聽聽聽聽聽聽聽聽
聽聽聽聽聽聽 聽聽聽聽聽聽聽聽



liulang 2006-09-25 22:52 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 国产成人免费网站| 在线视频精品免费| 免费人成在线观看网站品爱网日本| 911精品国产亚洲日本美国韩国| 在线观看黄片免费入口不卡| 日本亚洲国产一区二区三区| 免费播放国产性色生活片| 免费一级毛片在线观看| 国产成人亚洲精品无码AV大片| 国产精品视频免费一区二区三区| 亚洲人成未满十八禁网站| 啦啦啦www免费视频| 亚洲AV无码一区二区三区鸳鸯影院| 毛片a级毛片免费观看品善网| 亚洲欧美日韩一区二区三区| 午夜成人免费视频| 羞羞视频免费网站日本| 美腿丝袜亚洲综合| a在线观看免费网址大全| 青青草原精品国产亚洲av| 在线看片免费人成视久网| 亚洲自国产拍揄拍| 免费看大黄高清网站视频在线| 在线观看免费亚洲| 亚洲视频人成在线播放| 日韩成人免费视频| 亚洲国产成人精品激情| 在线观着免费观看国产黄| xxxxxx日本处大片免费看| 亚洲熟妇无码乱子AV电影| 99久久免费看国产精品| 亚洲字幕AV一区二区三区四区| 国产男女猛烈无遮档免费视频网站| 深夜福利在线视频免费| 亚洲国产成人久久精品动漫| 51在线视频免费观看视频| 最新亚洲人成无码网站| 亚洲国产精品特色大片观看完整版| 亚洲一级毛片免费看| 国产综合激情在线亚洲第一页 | 亚洲偷自精品三十六区|