j2.0ÐÂÌØÐÔ_JSP¼¼ÇÉ_ºÚ¿Í·ÀÏßÍø°²·þÎñÆ÷ά»¤»ùµØ--Powered by WWW.RONGSEN.COM.CN

j2.0ÐÂÌØÐÔ

×÷ÕߣººÚ¿Í·ÀÏßÍø°²JSP½Ì³Ì»ùµØ À´Ô´£ººÚ¿Í·ÀÏßÍø°²JSP½Ì³Ì»ùµØ ä¯ÀÀ´ÎÊý£º0

±¾Æª¹Ø¼ü´Ê£ºÌØÐÔ ±ê¼ÇʹÓÃ
ºÚ¿Í·ÀÏßÍø°²ÍøѶ£º¡¡¡¡SUN µÄаæJ2EE1.4ÌṩÁËÔÚJ2EEÖпª·¢Web ServiceµÄ»ù´¡£¬¶Ô¿ª·¢¹¤¾ß×öÁËһЩÖØÒªµÄÔöÇ¿£¬ÔÚÓ¦ÓóÌÐò²¿ÊðºÍ·þÎñÆ÷¹ÜÀí·½ÃæÒ²ÌṩÁËеıê×¼£¬ÔÚ¼¯³ÉÐԺͰ²È«ÐÔ·½ÃæÓÐËùÔöÇ¿£¬ÌáÉýÁËJ2EE...

¡¡¡¡SUN µÄаæJ2EE1.4ÌṩÁËÔÚJ2EEÖпª·¢Web ServiceµÄ»ù´¡£¬¶Ô¿ª·¢¹¤¾ß×öÁËһЩÖØÒªµÄÔöÇ¿£¬ÔÚÓ¦ÓóÌÐò²¿ÊðºÍ·þÎñÆ÷¹ÜÀí·½ÃæÒ²ÌṩÁËеıê×¼£¬ÔÚ¼¯³ÉÐԺͰ²È«ÐÔ·½ÃæÓÐËùÔöÇ¿£¬ÌáÉýÁËJ2EE ¿ª·¢WebÓ¦ÓóÌÐòµÄÄÜÁ¦£»ÔÚ±à³ÌÄ£ÐÍ·½ÃæµÄÖØÒª±ä»¯°üÀ¨JSP±í´ïʽÓïÑÔ¡¢¼ò»¯µÄ±ê¼Ç¿âµÈ£»EJB 2.1ÖÐÌṩÁËеÄtimer·þÎñ£¬²éѯÓïÑÔ£¨QL£©Ò²ÓÐËùÔöÇ¿£»Jdbc3.0 API°Ñͨ³£µÄJdbc APIÓëÀ©³äAPI½áºÏÆðÀ´£»J2EE Connectors¹æ·¶ºÍ¶ÀÁ¢ÓÚÏûÏ¢ÀàÐ͵ÄEJBÌṩÁ˶ÔË«ÏòͨÐŵÄÖ§³Ö¡£ÏÂÃæ¸ø´ó¼ÒÖصã½éÉÜJ2EE1.4Öаüº¬µÄJSP2.0¡¢ Servlet2.4¡¢Jdbc3.0ÒÔ¼°EJB2.1·½ÃæµÄÐÂÌØÐÔ¡£

¡¡¡¡JSP 2.0ÊôÓÚJ2EE 1.4ƽ̨£¬ËüÔÚJSP 1.2»ù´¡Ö®ÉÏÔö¼ÓÁËÐµĹ¦ÄÜ¡£Ëü±£Ö¤ÁËÏòϼæÈÝ£¬Ô­ÏÈʹÓõÄJSP¼¼ÊõÔÚJSP 2.0Öж¼¿ÉÒÔÖ§³Ö¡£JSP 2.0µÄй¦ÄÜÖ÷Òª°üÀ¨ÏÂÃ漸²¿·Ö£º

¡¡¡¡Ò»£©ÔËÐл·¾³±ä»¯

¡¡¡¡1¡¢web.xml¸ñʽ±ä»¯

¡¡¡¡ÎÒÃÇÖªµÀJSP 1.2¿ÉÒÔÔÚJava 2±ê×¼°æ1.3°æ±¾ÔËÐУ¬¶øJSP 2.0ÒªÇóʹÓÃJava 2±ê×¼°æ1.4»ò¸üа汾£¬JSP 2.0ʹÓÃÓÉServlet 2.4¹æ¶¨µÄWeb³ÌÐò²¿ÊðÃèÊö¸ñʽ¡£

¡¡¡¡ÔÚWeb³ÌÐòÃèÊöÎļþweb.xmlÖÐÐèҪʹÓÃxml schema´òÍ·µÄ¸ñʽ¡£ÔÚweb.xmlÖÐÖ÷ÒªµÄ±ä»¯ÊÇËùÓÐÓйØJSPµÄÉèÖÃÐÅÏ¢Òª·ÅÔÚ£¼jsp-config£¾±ê¼ÇÖС£ÏÂÃæ³ÌÐòÀý1ÏÔʾÁËÒ»¸öweb.xml´óÖµÄÑù×Ó¡£

¡¡¡¡    Àý1£º

¡¡¡¡    £¼?xml version="1.0" encoding="IS0-8859-1"?£¾

¡¡¡¡    £¼web-app xmlns=http://java.sun.com/xml/ns/j2ee

¡¡¡¡    xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance

¡¡¡¡    xsi:schemaLocation=http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd

¡¡¡¡    version="2.4"£¾

¡¡¡¡    .......

¡¡¡¡    £¼jsp-config£¾

¡¡¡¡    £¼taglib£¾  

¡¡¡¡    £¼taglib-uri£¾

¡¡¡¡    http://www.icconcept.com/ics/sample-taglib

¡¡¡¡    £¼/taglib-uri£¾

¡¡¡¡    £¼taglib-location£¾

¡¡¡¡    /WEB-INF/jsp/sample-taglib.tld

¡¡¡¡    £¼/taglib-location£¾

¡¡¡¡    £¼/taglib£¾

¡¡¡¡    ........

¡¡¡¡    £¼jsp-property-group£¾

¡¡¡¡    £¼description£¾

¡¡¡¡    For config the ICW sample application

¡¡¡¡    £¼/description£¾

¡¡¡¡    £¼display-name£¾JSPConfiguration£¼/display-name£¾

¡¡¡¡    £¼url-pattern£¾/jsp/datareset.jsp£¼/url-pattern£¾

¡¡¡¡    £¼el-ignored£¾true£¼£¯el-ignored£¾

¡¡¡¡    £¼page-encoding£¾ISO-8859-1£¼/page-encoding£¾

¡¡¡¡    £¼scripting-invalid£¾true£¼/scripting-invalid£¾

¡¡¡¡    £¼include-prelude£¾/jsp/prelude.jspf£¼/include-prelude£¾

¡¡¡¡    £¼include-coda£¾/jsp/coda.jspf£¼/include-coda£¾

¡¡¡¡    £¼/jsp-property-group£¾

¡¡¡¡    £¼/jsp-config£¾

¡¡¡¡    £¼/web-app£¾

¡¡¡¡2¡¢JSPÉèÖÃ

¡¡¡¡ÔÚ£¼jsp-config£¾±ê¼ÇÌṩÁËWeb³ÌÐòÖÐJSP³ÌÐòµÄÉèÖÃÐÅÏ¢¡££¼jsp-config£¾°üÀ¨£¼ taglib£¾ºÍ£¼jsp-property-group£¾Á½ÀàÔªËØ¡££¼taglib£¾¶¨ÒåÁËWeb³ÌÐòʹÓÃµÄ custom tag£¬ËüµÄÓ÷¨ºÍÒÔÇ°JSP 1.2ÖеÄÓ÷¨Ïàͬ¡££¼jsp-property-group£¾¶¨ÒåÁËÒ»×éJSPµÄÌØÐÔ¡£ÕâЩÌØÐÔʵ¼ÊÉ϶ÔÓ¦JSPµÄpage directive¶¨ÒåµÄÌØÐÔ¡£Í¨¹ý£¼jsp-property-group£¾Ö»²»¹ý¿ÉÒÔ·½±ãµØ¶Ô¶à¸ö¾ßÓÐÏàͬÊôÐÔµÄJSPͳһ¶¨Òå¡£

¡¡¡¡£¼jsp-property-group£¾¶¨ÒåÒ»¸ö»ò¶à¸öURLÑùʽ£¬ÔÚ£¼jsp-property-group£¾Öж¨ÒåµÄÊôÐÔ»áÊÊÓÃÓÚÆ¥ÅäÕâЩURLÑùʽµÄËùÓÐJSPÎļþ¡£ÔÚ£¼jsp-property-group£¾ÖеÄÊôÐÔ¿ÉÒÔ¶¨ÒåÒÔÏÂÉèÖãº

¡¡¡¡    (1)ÔÊÐí»ò½ûֹʹÓñí´ïʽÓïÑÔ(EL)

¡¡¡¡ÔÚ£¼jsp-property-group£¾ÖпÉÒÔÉ趨ÊÇ·ñÔÊÐí¶ÔÓ¦£¼url-pattern£¾µÄJSPʹÓÃJSTL±í´ïʽÓïÑÔ (EL)¡£Èç¹û£¼el-ignored£¾ÊôÐÔ±ê¼Ç±»É趨Ϊfalse£¬JSPÖеÄEL±í´ïʽ»á±»´¦Àí£»Èç¹ûÊÇtrue£¬WebÈÝÆ÷»áÔÚת»» JSPʱºöÂÔEL±í´ïʽ¡£

¡¡¡¡    (2)ÔÊÐí»ò½ûֹʹÓÃscripting

¡¡¡¡£¼scripting-invalid£¾ÊôÐÔ¿ÉÒÔÔÊÐí»ò½ûֹʹÓÃJSPµÄ½Å±¾ÓïÑÔ(scripting)¡£Èç¹ûÕâ¸öÊôÐÔ±ê¼Ç¶ÔӦΪtrue£¬¼´scriptingÔªËر»½ûÖ¹£¬ÔòJSPÖв»ÄÜʹÓÃscriptlet£¬scripting±í´ïʽºÍdeclaration£¬·ñÔò»áÓÐת»»´íÎó¡£µ±Õâ¸öÊôÐÔ±ê¼ÇΪfalseʱ£¬JSP¿ÉÒÔÏñÔÚ1.2°æ±¾Ö®Ç°ÄÇÑùʹÓýű¾ÓïÑÔ¡£

¡¡¡¡    (3)ÉùÃ÷JSP±àÂë

¡¡¡¡Í¨¹ý£¼page-encoding£¾±ê¼Ç¿ÉÒÔÉèÖöÔÓ¦£¼url-pattern£¾µÄJSPÍøÒ³µÄ±àÂë¡£Õâ¸öÊôÐÔ¶ÔӦÿ¸öJSPÖеÄpageEncodingÊôÐÔ£¬WebÈÝÆ÷½«¸ù¾ÝÕâ¸öÊôÐÔ¶ÔJSPÄÚÈݽøÐбàÂë¡£

¡¡¡¡    (4)¶ÔÓ¦Òþº¬°üÀ¨(Implicit Includes)

¡¡¡¡ÔÚ£¼jsp-property-group£¾ÖпÉÒÔÔÚ¶ÔÓ¦JSPÖмÓÈȩ̈ͷ(preludes)ºÍ½áβ(coda)£¬Ê¹Óã¼ include-prelude£¾ºÍ£¼include-coda£¾ÊôÐÔ¿ÉÒÔÉ趨ÔÚJSPÍøÒ³ÖаüÀ¨µÄpreludesºÍcodaµÄ jspfÎļþ¡£ÕâЩÎļþµÄλÖÃÏà¶ÔÓÚµ±Ç°Web³ÌÐòµÄcontext¡£µ±Óг¬¹ýÒ»¸öpreludes»òcodaÔªËØÔÚ£¼jsp-property- group£¾ÖÐʱ£¬JSP»á°´ÕÕÆä˳Ðò¼ÓÈëµ½ÄÚÈÝÖС£

¡¡¡¡ 
¡¡¡¡¶þ£©ÒýÈë±í´ïʽÓïÑÔ(EL)

¡¡¡¡JSP 2.0µÄÒ»¸öÖ÷ÒªÌصãÊÇËüÖ§³Ö±í´ïÓïÑÔ(expression language)¡£JSTL±í´ïʽÓïÑÔ¿ÉÒÔʹÓñê¼Ç¸ñʽ·½±ãµØ·ÃÎÊJSPµÄÒþº¬¶ÔÏóºÍJavaBeans×é¼þ£¬JSTLµÄºËÐıê¼ÇÌṩÁËÁ÷³ÌºÍÑ­»·¿ØÖƹ¦ÄÜ¡£×ÔÖƱê¼ÇÒ²ÓÐ×Ô¶¨Ò庯ÊýµÄ¹¦ÄÜ£¬Òò´Ë»ù±¾ÉÏËùÓÐseriptletÄÜʵÏֵŦÄܶ¼¿ÉÒÔÓÉJSPÌæ´ú¡£ÔÚJSP 2.0ÖУ¬½¨Ò龡Á¿Ê¹ÓÃEL¶øʹJSPµÄ¸ñʽ¸üÒ»Ö¡£

¡¡¡¡ÔÚweb.xmlµÄ£¼jsp-property-group£¾ÖпÉÒÔ¿ØÖÆÒ»×éJSPÊÇ·ñʹÓÃEL£¬ÔÚÿ¸öJSPÖÐÒ²¿ÉÒÔÖ¸¶¨ÊÇ·ñ¸ÃJSPʹÓÃEL¡£ÔÚpage directiveÖеÄisELIgnoredÊôÐÔÓÃÀ´Ö¸¶¨ÊÇ·ñºöÂÔ¡£¸ñʽΪ£º

¡¡¡¡£¼%@ page isELIgnored£½"true|false"%£¾

¡¡¡¡Èç¹ûÉ趨ΪÕ棬ÄÇôJSPÖеıí´ïʽ±»µ±³É×Ö·û´®´¦Àí¡£±ÈÈçÏÂÃæÕâ¸ö±í´ïʽ£¼p£¾${2000 % 20}£¼/p£¾ÔÚisELIgnored£½"true"ʱÊä³öΪ${2000 % 20}£¬¶øisELIgnored£½"false"ʱÊä³öΪ100¡£WebÈÝÆ÷ĬÈÏisELIgnored£½"false"¡£

¡¡¡¡ËäÈ»JSP 2.0¿ÉÒÔʹJSPÖÐÍêȫʹÓñí´ïÓïÑÔ¶ø±ÜÃâscriptlet£¬ÔÚʵ¼Ê±à³ÌÖУ¬Ó¦¸Ã¸ù¾Ý³ÌÐòµÄ¹¦ÄÜÒªÇóºÍ±à³ÌÈËÔ±µÄ×ÔÉíÌõ¼þÑ¡ÔñºÏÊʵķ½Ê½¡£Ê¹Óñí´ïÓïÑÔµÄJSP±È½Ï·½±ã¹æÕû£¬µ«ÊÇÓÉÓÚÐèÒª½«±ê¼Ç½øÐÐת»»£¬ÔÚµÚÒ»´Î±»µ÷ÓÃʱ»á±È½ÏÂý£»ÓÐЩ±à³ÌÈËÔ±ÓÉÓÚ¶ÔJava±È½ÏÁ˽⣬Òò¶ø¸üÏ°¹ßJSP 1.2֮ǰµÄ±à³Ì·½Ê½£¬Òò´Ë£¬ÔÚʹÓÃÖÐÓ¦ÒòµØÖÆÒ˵ØÑ¡ÔñÊÊÓõıà³Ì·½·¨¡£ 

¡¡¡¡Èý£©SimpleTag

¡¡¡¡JSP 2.0ÖмÓÈëÁËеĴ´½¨×ÔÖƱê¼ÇµÄAPI£¬javax.servlet.jsp.tagext.SimpleTag¶¨ÒåÁËÓÃÀ´ÊµÏÖ¼òµ¥±ê¼ÇµÄ½Ó¿Ú¡£ºÍ JSP 1.2ÖеÄÒÑÓнӿڲ»Í¬µÄÊÇ£¬SimpleTag½Ó¿Ú²»Ê¹ÓÃdoStartTag()ºÍdoEndTag()·½·¨£¬¶øÌṩÁËÒ»¸ö¼òµ¥µÄdoTag()·½·¨¡£Õâ¸ö·½·¨ÔÚµ÷Óøñê¼Çʱֻ±»Ê¹ÓÃÒ»´Î¡£¶øÐèÒªÔÚÒ»¸ö×ÔÖƱê¼ÇÖÐʵÏÖµÄËùÓÐÂß¼­¹ý³Ì¡¢Ñ­»·ºÍ¶Ô±ê¼ÇÌåµÄÆÀ¹ÀµÈ¶¼ÔÚÕâ¸ö·½·¨ÖÐʵÏÖ¡£´ÓÕâ¸ö·½ÃæÀ´½²£¬ SimpleTagºÍIterationTag¿ÉÒԴﵽͬµÈµÄ×÷Óᣵ«SimpleTagµÄ·½·¨ºÍ´¦ÀíÖÜÆÚÒª¼òµ¥µÃ¶à¡£ÔÚSimpleTagÖл¹ÓÐÓÃÀ´ÉèÖÃJSPÄÚÈݵÄseUspBody()ºÍgetJspBody()·½·¨¡£WebÈÝÆ÷»áʹÓÃsetJspBody()·½·¨¶¨ÒåÒ»¸ö´ú±íJSPÄÚÈÝµÄ JspFragment¶ÔÏó¡£ÊµÏÖSimpleTag±ê¼ÇµÄ³ÌÐò¿ÉÒÔÔÚdoTag·½·¨Öиù¾ÝÐèÒª¶à´Îµ÷ÓÃgetJspBody().invoke()·½·¨ÒÔ´¦ÀíJSPÄÚÈÝ¡£

¡¡¡¡ÀýÈ磬³ÌÐòÀý2 SimpleTag¸ù¾ÝÖ¸¶¨µÄ´ÎÊý(times)½øÐÐÑ­»·²¢Êä³öµ±Ç°ÐòºÅ(sequence)¡£³ÌÐòµÄ½á¹¹±È½Ï¼òµ¥£¬ËùÓÐÂß¼­¶¼ÔÚdoTag·½·¨ÖÐʵÏÖ¡£

¡¡¡¡Àý2£º

¡¡¡¡  packageICW.taglib;

¡¡¡¡  importjavax.servlet.jsp.JspException;

¡¡¡¡  importjavax.servlet.jsp.tagext.SimpleTagSupport;

¡¡¡¡  importjava.util.HashMap;

¡¡¡¡  importjava.io.IOException;

¡¡¡¡  public class IterationSimpleTag extends SimpleTagSupport{

¡¡¡¡  privateint times;

¡¡¡¡public void setTimes(int_times){

¡¡¡¡    this.times=_times;

¡¡¡¡        }

¡¡¡¡    public void doTag() throws JspException,IOException{

¡¡¡¡    HashMapparams=new HashMap();

¡¡¡¡    for(inti=0; i£¼times;i++){

¡¡¡¡    params.put("sequence",String.valueOf(i+1));

¡¡¡¡    getJspBody().invoke(null,params);

¡¡¡¡      }

¡¡¡¡     }

¡¡¡¡    }

¡¡¡¡Õâ¸ö±ê¼ÇµÄTLDÎļþÄÚÈÝÈçÏ£¬ËüʹÓÃÁËXML schcma¶¨Òå±ê¼ÇµÄʹÓ÷½·¨¡£

¡¡¡¡    ³ÌÐòÀý3ÈçÏ£º

¡¡¡¡    £¼?xml version="1.0" encoding="UTF-8" ?£¾

¡¡¡¡    £¼taglibxmlns=http://java.sun.com/xml/ns/i2ee

¡¡¡¡    xmlns:xsi=http://WWW.w3.org/2001/XMLSchema-instance

¡¡¡¡    xsl:schemaLocation=http://java.sun.com/xml/ns/j2ee web-jsptaglihrary_2_0.xsd

¡¡¡¡    version="2.0"£¾

¡¡¡¡  £¼taglib£¾

¡¡¡¡    £¼tiib-version£¾1.0£¼/tlib-version£¾

¡¡¡¡    £¼short-name£¾Jwad book simple tag£¼/short-name£¾

¡¡¡¡    £¼uri£¾/JwadSimpleTag£¼/uri£¾

¡¡¡¡    £¼description£¾Simple Tag Handler£¼/description£¾

¡¡¡¡    £¼tag£¾

¡¡¡¡    £¼name£¾iteration£¼/name£¾

¡¡¡¡    £¼tag-class£¾ICW.taglib.IterationSimpleTag£¼/tag-class£¾

¡¡¡¡    £¼body-content£¾scriptless£¼/body-content£¾

¡¡¡¡    £¼description£¾Iteration Tag£¼/description£¾

¡¡¡¡    £¼variable£¾

¡¡¡¡    £¼description£¾Current iterationnumber£¼/description£¾

¡¡¡¡    £¼name-given£¾sequence£¼/name¡ªgiven£¾

¡¡¡¡    £¼/variable£¾

¡¡¡¡    £¼attribute£¾

¡¡¡¡    £¼name£¾times£¼/name£¾

¡¡¡¡    £¼required£¾true£¼/required£¾

¡¡¡¡    £¼rtexprvalue£¾true£¼/rtexprvalue£¾

¡¡¡¡    £¼/attribute£¾

¡¡¡¡    £¼/tag£¾

¡¡¡¡   £¼/taglib£¾

¡¡¡¡³ÌÐòÀý4ÖеÄJSPʹÓÃÉÏÃæÀý3Öж¨ÒåµÄIterationSimpleTag£¬Ëü¸ù¾ÝWebÇëÇó²ÎÊýÖиø¶¨µÄ¡°times¡±µÄÖµ½øÐÐÒ»¶¨´ÎÊýµÄÑ­»·¡£ÔÚÿ´ÎÑ­»·Öн«Êä³ö"sequence"µÄÖµ¡£

¡¡¡¡    Àý4£º

¡¡¡¡    £¼%@ taglib prefix="ictag" uri="/WEB-INF/ics-jsp2.tld" %£¾

¡¡¡¡    £¼HTML£¾£¼HEAD£¾£¼TITLE£¾Simple Tag Sample£¼/TITLE£¾£¼/HEAD£¾

¡¡¡¡    £¼BODY£¾

¡¡¡¡    £¼CENTER£¾

¡¡¡¡    £¼FONT COLOR='#009999' SIZE='4' face='Arial'£¾

¡¡¡¡    £¼STRONG£¾Interation Simple Tag£¼/STRONG£¾

¡¡¡¡    £¼/FONT£¾

¡¡¡¡    £¼/CENTER£¾

¡¡¡¡    £¼HR£¾

¡¡¡¡    £¼c:setvar="time" value="${param.times}"/£¾

¡¡¡¡    £¼p£¾£¼B£¾Reminder:£¼/B£¾£¼/p£¾£¼br£¾

¡¡¡¡    £¼ictag:iteration times="${times}"£¾

¡¡¡¡    This is the ${sequence} Of ${times} times of reminder£¼br£¾

¡¡¡¡    £¼/ictag:iteration£¾

¡¡¡¡    £¼/body£¾

¡¡¡¡    £¼/html£¾

¡¡¡¡ËÄ£©Ê¹ÓÃJSP fragment

¡¡¡¡JSP 2.0ÖеÄÒ»¸öÖ÷Òª¹¦ÄÜÊÇJSP fragment£¬ËüµÄ»ù±¾ÌصãÊÇ¿ÉÒÔʹ´¦ÀíJSPµÄÈÝÆ÷ÍƳÙÆÀ¹ÀJSP±ê¼ÇÊôÐÔ¡£ÎÒÃÇÖªµÀÒ»°ãJSPÊÇÊ×ÏÈÆÀ¹ÀJSP±ê¼ÇµÄÊôÐÔ£¬È»ºóÔÚ´¦ÀíJSP±ê¼ÇʱʹÓÃÕâЩÊôÐÔ£¬¶øJSP fragmentÌṩÁ˶¯Ì¬µÄÊôÐÔ¡£Ò²¾ÍÊÇ˵£¬ÕâЩÊôÐÔÔÚJSP´¦ÀíÆä±ê¼ÇÌåʱÊÇ¿ÉÒÔ±»¸Ä±äµÄ¡£JSPÐèÒª½«ÕâÑùµÄÊôÐÔ¶¨ÒåΪ javax.servlet.jsp.tagext.JspFragmentÀàÐÍ¡£µ±JSP±ê¼ÇÉèÖóÉÕâÖÖÐÎʽʱ£¬ÕâÖÖ±ê¼ÇÊôÐÔʵ¼ÊÉϵĴ¦Àí·½·¨ÀàËÆÓÚ±ê¼ÇÌå¡£ÔÚʵÏÖ±ê¼ÇµÄ³ÌÐòÖУ¬±ê¼ÇÊôÐÔ¿ÉÒÔ±»·´¸´ÆÀ¹À¶à´Î¡£ÕâÖÖÓ÷¨³ÆΪJSP fragment¡£JSP fragment»¹¿ÉÒÔ¶¨ÒåÔÚÒ»¸öSimpleTag´¦Àí³ÌÐòÖÐʹÓõÄ×ÔÖƱê¼Ç¶¯×÷¡£ÏñÇ°ÃæÀý×Ó˵Ã÷µÄ£¬getJspBody·µ»ØÒ»¸ö JspFragment¶ÔÏ󲢿ÉÒÔÔÚdoTag·½·¨Öжà´ÎʹÓá£ÐèҪעÒâµÄÊÇ£¬Ê¹ÓÃJSP fragmentµÄJSPÖ»ÄÜÓÐÒ»°ãµÄÎı¾ºÍJSP action£¬²»ÄÜÓÐscriptletºÍscriptlet±í´ïʽ¡£

¡¡¡¡ÎÒÃÇ¿ÉÒÔ¼òµ¥µØÈÏΪJSP fragmentÊÇÒ»¶Î¿ÉÒÔÖظ´Ê¹ÓõÄJSP¡£Ò»¶ÎJSP fragment¿ÉÒÔ±»´«µÝµ½ÁíÒ»¸öJSPÖв¢±»Ê¹Óá£ÓëJSP include¸ÅÄͬµÄÊÇ£¬JSP fragmentÒ»°ã¹¦ÄܱȽ϶ÌС¼òµ¥¶øÇÒÖظ´Ê¹ÓÃÂʸߡ£

¡¡¡¡JSP fragmentÒ»°ãÔÚ£¼jsp:attribute£¾±ê¼ÇÌåÄÚ»ò£¼jspcbody£¾±ê¼ÇÌåÄÚ¶¨Ò塣ÿ´Îµ±º¬ÓÐJSP fragmentµÄ±ê¼Ç±»Ê¹ÓÃʱ£¬WebÈÝÆ÷Éú³ÉÒ»¸öJspFragment¶ÔÏó£¬Õâ¸ö¶ÔÏóºÍµ±Ç°JSPµÄpage scopeÁªÏµÆðÀ´¡£Í¬Ê±£¬Õâ¸öJspFragment¶ÔÏóºÍ°üº¬ËüµÄ¸¸±ê¼Ç½¨Á¢ÁªÏµ¡£JspFragment¶ÔÏó¿ÉÒÔÓÐÁ½ÖÖµ÷Ó÷½Ê½£ºÊ¹ÓÃJava±àдµÄ±ê¼Ç´¦Àí³ÌÐò£¬»òÕßʹÓñê¼ÇÎļþ(tag file)¡£±ê¼ÇÎļþ¿ÉÒÔʹÓã¼jsp:invoke£¾£¬»òÕߣ¼jsp:doBody£¾¶¯×÷ʹÓÃJSP fragment¡£  JSP±ê¼ÇÎļþ¿ÉÒÔºÍJSP fragment¹²Í¬¹¤×÷¡£CustomTag¶¼ÊÇÒÔ±à³Ì·½Ê½ÊµÏֵġ£JSP±ê¼ÇÎļþÊÇÓÃÎı¾Îļþ¸ñʽ(JSPÓï·¨)ʵÏÖ×ÔÖƱê¼Ç£¬ÕâÒ²ÊÇJSP 2.0µÄÒ»¸öÖ÷Ҫй¦ÄÜ¡£Ò»¸ö±ê¼ÇÎļþ¿ÉÒÔ¶ÔÓ¦Ò»¸ö±ê¼Ç£¬¿ÉÒÔ²»ÐètldÎļþ¶¨Òå¸Ã±ê¼ÇµÄ·½·¨¡£ÕâÑù£¬¼´Ê¹±à³ÌÈËÔ±²»ÊìϤJava£¬Ò²¿ÉÒÔʹÓÃJSPÓï·¨¶¨Òå×Ô¼ºµÄ±ê¼Ç¡£±ê¼ÇÎļþÒ»°ãʹÓÃ.tagΪºó׺²¢·ÅÔÚWeb³ÌÐòµÄ/WEB-INFĿ¼Ï¡£

¡¡¡¡³ÌÐòÀý5ÖеÄtaskstatus.jspʹÓÃÁËÁ½¸öJSP fragment¡£Õâ¸öJSPµÄ¹¦ÄÜÊÇÏÔʾһ×éTaskµÄÃû³ÆºÍÍê³ÉÈÕÆÚ£¬Ëüͨ¹ý£¼jsp:attribute name£½"..."£¾¶¨ÒåÁËÁ½¶ÎJSPfragment(Ãû³ÆΪonSeheduleºÍdelayed)¡£ÔÚ£¼jsp: attribute£¾±ê¼ÇÄÚµÄJSP¾ÍÊÇJSPfragment£¬¶ø£¼jsp:attribute£¾±ê¼Ç±»Ò»¸ö£¼ietag: listTasks£¾°üΧ¡£Õâ¸ö±ê¼ÇÊÇÒ»¸öͨ¹ý±ê¼ÇÎļþ¶¨ÒåµÄ×ÔÖƱê¼Ç£¬ËüµÄ¶¨ÒåÎļþÔÚ/WEB-INF/tagsĿ¼Ï¡£±ê¼ÇÎļþµÄÃû³ÆºÍ±ê¼ÇÃû³ÆÒ»ÖÂΪ¡°listTasks.tag"¡£Õâ¸ö±ê¼Ç»áʹÓõ½Ç°Ã涨ÒåµÄÁ½¸öJSP fragment¡£

¡¡¡¡Àý5:

¡¡¡¡  £¼%@ taglib prefix="ictag" tagdir="/WEB-INF/tags" %£¾

¡¡¡¡  £¼HTML£¾£¼HEAD£¾£¼TITLE£¾JSP Fragment Sample£¼/TITLE£¾£¼/HEAD£¾

¡¡¡¡  £¼BODY£¾

¡¡¡¡    £¼CENTER£¾

¡¡¡¡    £¼FONT COLOR='#009999' SIZE='4' face='Arial'£¾

¡¡¡¡    £¼STRONG£¾JSP Fragment Sample Using Tag Files£¼/STRONG£¾

¡¡¡¡    £¼/FONT£¾

¡¡¡¡    £¼/CENTER£¾

¡¡¡¡    £¼HR£¾

¡¡¡¡    £¼h2£¾Tasks£¼/h2£¾

¡¡¡¡    £¼ietag:listTasks£¾

¡¡¡¡    £¼jsp:attribute name="onSchedule"£¾

¡¡¡¡    £¼td£¾

¡¡¡¡    Name:${name}£¼br/£¾

¡¡¡¡    £¼/td£¾£¼td£¾

¡¡¡¡    Date:${date}

¡¡¡¡    £¼/td£¾

¡¡¡¡    £¼/jsp:attribute£¾

¡¡¡¡    £¼jsp:attribute name="delayed"£¾

¡¡¡¡    £¼td£¾Name:${name}£¼br/£¾

¡¡¡¡    £¼/td£¾£¼td£¾

¡¡¡¡    £¼font color="red"£¾Plan:£¼strike£¾ ${pianDate}£¼/strike£¾£¼/font£¾£¼br/£¾

¡¡¡¡    £¼b£¾Actural:${actDate}£¼/b£¾

¡¡¡¡    £¼/td£¾

¡¡¡¡    £¼/jsp:attribute£¾

¡¡¡¡    £¼/ictag:listTasks£¾

¡¡¡¡    £¼/BODY£¾

¡¡¡¡    £¼/HTML£¾

¡¡¡¡Î壩ÆäËûÌØÐÔ

¡¡¡¡JSP2.0»¹ÓÐһЩÆäËûÌØÐԱ仯£¬±ÈÈçÑϸñÐÞÕýÁËI18NµÄÓï·¨¹æÔò£¬¸Ä½øJSP¶ÔÓ¦XMLÓï·¨´Ó¶øÔÊÐíʹÓÃnamespacesµÈ¡£ÕâЩ²¢²»ÊǺËÐŦÄÜ£¬´ó¼Ò¿ÉÒÔ²ÎÕÕjava.sun.comµÄÓйØ×ÊÁÏÁ˽⹦ÄܵÄϸ½Ú£¬ÕâÀï¾Í²»ÔÙ²ûÊö¡£

    ºÚ¿Í·ÀÏßÍø°²·þÎñÆ÷ά»¤·½°¸±¾ÆªÁ¬½Ó£ºhttp://www.rongsen.com.cn/show-16572-1.html
Íøվά»¤½Ì³Ì¸üÐÂʱ¼ä:2012-04-07 00:43:08  ¡¾´òÓ¡´ËÒ³¡¿  ¡¾¹Ø±Õ¡¿
ÎÒÒªÉêÇë±¾Õ¾£ºNµã | ºÚ¿Í·ÀÏß¹ÙÍø |  
רҵ·þÎñÆ÷ά»¤¼°Íøվά»¤ÊÖ¹¤°²È«´î½¨»·¾³£¬ÍøÕ¾°²È«¼Ó¹Ì·þÎñ¡£ºÚ¿Í·ÀÏßÍø°²·þÎñÆ÷ά»¤»ùµØÕÐÉ̽øÐÐÖУ¡QQ:29769479

footer  footer  footer  footer