JSP×Ô¶¨Òå±êÇ©±àд
Ò»¸ötag¾ÍÊÇÒ»¸öÆÕͨµÄjavaÀ࣬ËüÎ©Ò»ÌØ±ðÖ®´¦ÊÇËü±ØÐë¼Ì³ÐTagSupport»òÕßBodyTagSupportÀà¡£ÕâÁ½¸öÀàÌṩÁËһЩ·½·¨£¬¸ºÔðjspÒ³ÃæºÍÄã±àдµÄÀàÖ®¼äµÄ½»»¥£¬ÀýÈçÊäÈ룬Êä³ö¡£¶øÕâÁ½¸öÀàÊÇÓÉjspÈÝÆ÷ÌṩµÄ£¬ÎÞÐ뿪·¢ÈËÔ±×Ô¼ºÊµÏÖ¡£»»¾ä»°Ëµ£¬ÄãÖ»Ðè°ÑʵÏÖÁËÒµÎñÂß¼µÄÀà¼Ì³ÐTagSupport»òÕßBodyTagSupport£¬ÔÙ×öÒ»Ð©ÌØ±ðµÄ¹¤×÷£¬ÄãµÄÀà¾ÍÊÇÒ»¸öTag¡£²¢ÇÒËü×Ô¼º¸ºÔðºÍjsp Ò³ÃæµÄ½»»¥£¬²»ÓÃÄã¶à²ÙÐÄ¡£
“ÌØ±ðµÄ¹¤×÷”ͨ³£ÓÐÒÔϼ¸¸ö²½Ö裺
[1]ÌṩÊôÐÔµÄset·½·¨£¬´ËºóÕâ¸öÊôÐԾͿÉÒÔÔÚjspÒ³ÃæÉèÖá£ÒÔjstl±êǩΪÀý c:out value=""/£¬Õâ¸övalue¾ÍÊÇjspÊý¾Ýµ½tagÖ®¼äµÄÈë¿Ú¡£ËùÒÔtagÀïÃæ±ØÐëÓÐÒ»¸ösetValue·½·¨£¬¾ßÌåµÄÊôÐÔ¿ÉÒÔ²»½Ðvalue¡£ÀýÈçsetValue(String data){this.data = data;}
Õâ¸ö“value”µÄÃû³ÆÊÇÔÚtldÀïÒÔattributeÔªËØ´æÔڵġ£
ȡʲôÃû×Ö¶¼¿ÉÒÔ£¬Ö»ÐètagÀïÌṩÏàÓ¦µÄset·½·¨¼´¿É¡£
[2]´¦Àí doStartTag »ò doEndTag ¡£ÕâÁ½¸ö·½·¨ÊÇ TagSupportÌṩµÄ¡£ »¹ÊÇÒÔc:out value=""/ΪÀý£¬µ±jsp½âÎöÕâ¸ö±êÇ©µÄʱºò£¬ÔÚ“<”´¦´¥·¢ doStartTag ʼþ£¬ÔÚ“>”ʱ´¥·¢ doEndTag ʼþ¡£Í¨³£ÔÚ doStartTag Àï½øÐгõʼ»¯,Á÷³ÌÑ¡Ôñ²Ù×÷£¬ÔÚ doEndTag ÀïºóÐøÒ³ÃæÊä³ö¿ØÖÆ¡£
[3]±àдtldÎļþ,¾ÍÊǰѱàдµÄtag×é¼þµÄÐÅÏ¢ÒÔmxlÐÎʽ¸æËßÈÝÆ÷,Ëü²ÅºÃÒÔÒ»¶¨²½Öè½âÊÍtag×é¼þ
[4]ÔÚjspÒ³Ãæµ¼Èëtld¡£ÕâÑù£¬ÄãµÄjspÒ³Ãæ¾Í¿ÉÒÔʹÓÃ×Ô¼ºµÄtag×é¼þÁË¡£
ͨ³£Äã»á·¢ÏÖ×Ô¼º¾ø´ó¶àÊý»î¶¯¶¼¼¯ÖÐÔÚ doStartTag »ò doEndTag·½·¨Àï,Èç¹ûÔÚ·þÎñÆ÷¶Ë´¦Àí±êÇ©ÖеÄÕýÎÄ»òÔòÊÇǶÌ×±êǩʱµÄ»°,»¹ÊǹýÎÊÒ»ÏÂdoAfterBody¡£
Ò»¸ö¼òµ¥µÄÀý×Ó£ºOutputTag
package test;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
public class OutputTag extends TagSupport {
private String name=null;
public void setName(String name) {
this.name = name;
}
public int doEndTag() throws JspException
{
try {
JspWriter out = pageContext.getOut();
out.print("Hello! " + name);
¡¡¡¡} catch (Exception e) { throw new JspException(e); }
return EVAL_PAGE;
}
}
Ïà¹ØÎĵµ£º
Ò»£ºweb.xmlÅäÖÃ
<servlet>
<servlet-name>context</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<context-param>
<param-name>cont ......
Ê×ÏÈ˵˵ΪʲôҪ¾²Ì¬»¯¡£
¶ÔÓÚÏÖÔÚµÄWeb ApplicationÀ´Ëµ£¬¶¯Ì¬Ò³ÃæÊÇÕ¼Óоø¶Ô¸ßµÄµØÎ»µÄ£¬ÕýÒòΪÓÐÁ˶¯Ì¬»¯£¬²ÅÓÐÁËÏÖÔÚWebµÄ·á¸»¶à²Ê£¬µ«ÊÇÈçͬËùÓбðµÄÊÂʵһÑù£¬ºÃ´¦ÍùÍù¶¼ÊÇÓдú¼ÛµÄ¡£
ΪÁ˲úÉú³ö¶¯Ì¬µÄЧ¹û£¬Ã¿Ò»´Î¶ÔÒ³ÃæµÄÇëÇó¶¼»áÒªÇó·þÎñÆ÷¶ÔÒ³Ãæ½øÐбàÒë»òÕßÖ´ÐУ¬ÕâЩ²Ù×÷¶¼ºÜÏûºÄϵͳ×ÊÔ´¡£Èç¹ûÕâÆÚ¼ä»¹ÓÐ ......
ÔÚ±¾ÆªÎÄÕÂÖн«Ê¹ÓùýÂËÆ÷½øÐбàÂëת»»¡¢µÇ½ÑéÖ¤¡¢·ÀÕ¾ÍâÌá½»µÄ¹ý³Ì£¬ÎªÁËÑÝʾ£¬ÎҰѱàÂëת»»·ÅÔÚÒ»¸öfilterÖУ¬µÇ½ÑéÖ¤ºÍ·ÀÕ¾ÍâÌá½»·ÅÔÚÁíÒ»¸öfilterÖУ¬Á½¸öfilter½øÐд®Áª¹¤×÷¡£
1¡¢ÎªÁËÑÝʾ£¬ÏÈÖÆ×÷ÕâÁ½¸öfilter
//Õâ¸öfilterÊÇΪÁË×ö±àÂëת»»£¬Ö»Òª·ÃÎÊ.jspÍøÒ³¶¼Òª¹¦¹ýÕâ¸öfilter
/**ÀàÃû£ºfilter.Encoding
*×÷ ......
×î½ü×öÒ»¸öÉÌ»§½Ó¿Ú£¬·¢ÏÖͬһӦÓÃÏÂjspÓëservletµÄsession¶ÔÏó²»Äܹ²Ïí£»¿àÏëÚ¤Ï룬ÖÕÓÚÕÒµ½Ò»¸ö½â¾ö·½°¸¡£
°¸Àý±³¾°ÊÇÕâÑùµÄ£º
¿Í»§Òªµ÷ÓÃÎÒдµÄÕâ¸ö½Ó¿Ú½øÐÐÕÊ»§ÑéÖ¤£¬Æä²Ù×÷Á÷³ÌÈçÏ£º
1. &nb ......
JSPÖеÄÌø×ª£º
(1). forward()·½·¨
ʹÓõ½javax.servlet.RequestDispatcherÀà
RequestDispatcher rd = getServletContext().getRequestDispatcher("url");
rd.forward(requestVar,requestVar); //´«µÝservletµÄÈë¿Ú²ÎÊý
/*forwardº¯ÊýÒѾ°ÑÔÒ³ÃæµÄrequest,response¶ÔÏó´«ÈëеÄÒ³Ãæ£¬Òò´ËÕâо ......