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;
}
}
Ïà¹ØÎĵµ£º
ÔÎĵØÖ·£ºhttp://hi.baidu.com/wangking/blog/item/8a109423ff3d2341ac34dec9.html
ÔÚJava web¿ª·¢Öг£»áʹÓõ½¹¦ÄÜÇ¿´óµÄ¹ýÂËÆ÷£¬Ëû±Ï¾¹ÄܸøÎÒÃÇ´øÀ´ºÜ´óµÄ·½±ã£¬µ«ÊÇÕë¶Ô¹ýÂ˵Ä×ÊÔ´ÎÒÃÇÐèÒªÏêϸµÄÁ˽âËûÃÇÔÚweb.xmlÖеÄÅäÖÃÐÅÏ¢¡£Õâ¸ö¸ù¾Ý¼¸ÖÖ³£ÓõIJ»Í¬Çé¿ö½øÐÐÁË×ܽ᣺
1¡£Èç¹ûÒªÓ³Éä¹ýÂËÓ¦ÓóÌÐòÖÐËùÓÐ×ÊÔ´£º
< ......
ÔÚ±¾ÆªÎÄÕÂÖн«Ê¹ÓùýÂËÆ÷½øÐбàÂëת»»¡¢µÇ½ÑéÖ¤¡¢·ÀÕ¾ÍâÌá½»µÄ¹ý³Ì£¬ÎªÁËÑÝʾ£¬ÎҰѱàÂëת»»·ÅÔÚÒ»¸öfilterÖУ¬µÇ½ÑéÖ¤ºÍ·ÀÕ¾ÍâÌá½»·ÅÔÚÁíÒ»¸öfilterÖУ¬Á½¸öfilter½øÐд®Áª¹¤×÷¡£
1¡¢ÎªÁËÑÝʾ£¬ÏÈÖÆ×÷ÕâÁ½¸öfilter
//Õâ¸öfilterÊÇΪÁË×ö±àÂëת»»£¬Ö»Òª·ÃÎÊ.jspÍøÒ³¶¼Òª¹¦¹ýÕâ¸öfilter
/**ÀàÃû£ºfilter.Encoding
*×÷ ......
(1)include ÔÚJSP±àÒë³ÉJavaÀàÎļþʱ£¬ÏȽ«includeÎļþÄÚÈݺϲ¢ºó£¬ÔÙ½øÐбàÒë
(2)jsp:include ÔËÐÐʱºÏ²¢,»á½«ÔËÐÐʱµÄ½á¹û°üº¬½øÀ´
(3)c:import ÔËÐÐʱºÏ²¢,»á½«ÔËÐÐʱµÄ½á¹û°üº¬½øÀ´
Òò´Ë£¬
£¨1£©ÀûÓÃinclude°üº¬µÄÒ³ÃæÖÐÈç¹û°üº¬Á˺ÍÔÒ ......
JspµÄ¾ÅÖÖ¶ÔÏóÎÒ¼òÊöÖ®£º
page
application
request
response
session
config
out
pageContext
page
<%@page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" %>
response
<%
response.setHeader("Pragma","No-cache");
respons ......
jspµÄÄÚÖöÔÏó¡¢¹¦ÄÜÒÔ¼°Ö÷Òª·½·¨
JspÄÚÖöÔÏó ¹¦ÄÜ Ö÷Òª·½·¨
out Ïò¿Í»§¶ËÊä³öÊý¾Ý print() println() flush() clear() isAutoFlush() getBufferSize() close() …………
request Ïò¿Í»§¶ËÇëÇóÊý¾Ý getAttributeNames() getCookies() getParameter() getParameterValues() ......