ÎåÖÖJSPÒ³ÃæÌø×ª·½·¨Ïê½â(1)
1. RequestDispatcher.forward()
ÊÇÔÚ·þÎñÆ÷¶ËÆð×÷ÓÃ,µ±Ê¹ÓÃforward()ʱ,Servlet engine´«µÝHTTPÇëÇó´Óµ±Ç°µÄServlet or JSPµ½ÁíÍâÒ»¸öServlet,JSP »òÆÕͨHTMLÎļþ,Ò²¼´ÄãµÄformÌá½»ÖÁa.jsp,ÔÚa.jspÓõ½ÁËforward()ÖØ¶¨ÏòÖÁb.jsp,´ËʱformÌá½»µÄËùÓÐÐÅÏ¢ÔÚ b.jsp¶¼¿ÉÒÔ»ñµÃ,²ÎÊý×Ô¶¯´«µÝ. µ«forward()ÎÞ·¨Öض¨ÏòÖÁÓÐframeµÄjspÎļþ,¿ÉÒÔÖØ¶¨ÏòÖÁÓÐframeµÄhtmlÎļþ,ͬʱforward()ÎÞ·¨ÔÚºóÃæ´ø²ÎÊý´«µÝ,±ÈÈçservlet?name=frank,ÕâÑù²»ÐÐ,¿ÉÒÔ³ÌÐòÄÚͨ¹ýresponse.setAttribute("name",name)À´´«ÖÁÏÂÒ»¸öÒ³Ãæ¡£
ÖØ¶¨Ïòºóä¯ÀÀÆ÷µØÖ·À¸URL²»±ä¡£
Àý£ºÔÚservletÖнøÐÐÖØ¶¨Ïò
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
{
¡¡ response.setContentType("text/html; charset=gb2312");
¡¡ ServletContext sc = getServletContext();
¡¡ RequestDispatcher rd = null;
¡¡ rd = sc.getRequestDispatcher("/index.jsp"); //¶¨ÏòµÄÒ³Ãæ
¡¡ rd.forward(request, response);
}
ͨ³£ÔÚservletÖÐʹÓ㬲»ÔÚjspÖÐʹÓá£
2. response.sendRedirect()
ÊÇÔÚÓû§µÄä¯ÀÀÆ÷¶Ë¹¤×÷,sendRedirect()¿ÉÒÔ´ø²ÎÊý´«µÝ,±ÈÈçservlet?name=frank´«ÖÁϸöÒ³Ãæ,ͬʱËü¿ÉÒÔÖØ¶¨ÏòÖÁ²»Í¬µÄÖ÷»úÉÏ,sendRedirect()¿ÉÒÔÖØ¶¨ÏòÓÐframe.µÄjspÎļþ.
ÖØ¶¨ÏòºóÔÚä¯ÀÀÆ÷µØÖ·À¸ÉÏ»á³öÏÖÖØ¶¨ÏòÒ³ÃæµÄURL
Àý£ºÔÚservletÖÐÖØ¶¨Ïò
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
{
¡¡ response.setContentType("text/html; charset=gb2312");
¡¡ response.sendRedirect("/index.jsp");
}
ÓÉÓÚresponseÊÇjspÒ³ÃæÖеÄÒþº¬¶ÔÏ󣬹ÊÔÚjspÒ³ÃæÖпÉÒÔÓÃresponse.sendRedirect()Ö±½ÓʵÏÖÖØ¶¨Î»¡£
×¢Ò⣺
(1) ʹÓÃresponse.sendRedirectʱ£¬Ç°Ãæ²»ÄÜÓÐHTMLÊä³ö£»
Õâ²¢²»ÊǾø¶ÔµÄ£¬²»ÄÜÓÐHTMLÊä³öÆäʵÊÇÖ¸²»ÄÜÓÐHTML±»Ë͵½ÁËä¯ÀÀÆ÷¡£ÊÂʵÉÏÏÖÔÚµÄserver¶¼ÓÐcache»úÖÆ£¬Ò»°ãÔÚ8K£¨ÎÒÊÇ˵ JSP¡¡SERVER£©£¬Õâ¾ÍÒâζ×Å£¬³ý·ÇÄã¹Ø±ÕÁËcache£¬»òÕßÄãʹÓÃÁËout.flush()Ç¿ÖÆË¢Ð£¬ÄÇôÔÚʹÓÃsendRedirect֮ǰ£¬ÓÐÉÙÁ¿µÄHTMLÊä³öÒ²ÊÇÔÊÐíµÄ¡£
(2) response.sendRedirectÖ®ºó£¬Ó¦¸Ã½ô¸úÒ»¾äreturn¡£
ÎÒÃÇÒѾ֪µÀresponse.sendRedirectÊÇͨ¹ýä¯ÀÀÆ÷À´×öתÏòµÄ£¬ËùÒÔÖ»ÓÐÔÚÒ³Ãæ´¦ÀíÍê³Éºó£¬²Å»áÓÐʵ¼ÊµÄ¶¯×÷¡£¼ÈÈ»ÄãÒѾҪ×öתÏòÁË£¬ÄÇôºóµÄÊä³ö»¹
Ïà¹ØÎĵµ£º
JSPÄÚÖöÔÏó(9¸ö³£ÓõÄÄÚÖöÔÏó)
1.request¶ÔÏó
¿Í»§¶ËµÄÇëÇóÐÅÏ¢±»·â×°ÔÚrequest¶ÔÏóÖУ¬Í¨¹ýËü²ÅÄÜÁ˽⵽¿Í»§µÄÐèÇó£¬È»ºó×ö³öÏìÓ¦¡£ËüÊÇHttpServletRequestÀàµÄʵÀý¡£
ÐòºÅ ·½ ·¨ ˵ Ã÷
1 object getAttribute(String name) ·µ»ØÖ¸¶¨ÊôÐÔµÄÊôÐÔÖµ
2 Enumeration getAttr ......
1 ±ê¼Ç´¦Àí³ÌÐòÀà
´¦ÀíÀà¼Ì³ÐTagSupportÀà²¢ÖØÔØdoStartTag()·½·¨,
Ôڸ÷½·¨ÖÐʹÓÃout.print();Êä³öÐèÒªµÄÊý¾Ýµ½Ê¹Óñ¾±êÇ©µÄjspÒ³Ãæ
package cn.xxx;
public class DateTag extends TagSupport {
private static final long serialVersionUID = 1L;
public int doStartTag() thr ......
Èç¹ûweb.xmlÀïÃæµÄ<web-app>ÊÇversion="2.4"£¬ÄÇô¾ÍÒªÔÚ<jsp-property-group>ÀïÉèÖá£Èç¹ûversion="2.5"¾Í²»ÐèÒª¡£
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/javae ......
Ò»¡¢
ÔÚÒ»¸öÉè¼ÆÁ¼ºÃµÄWebÓ¦ÓÃÖУ¬¶¼»á×ÛºÏʹÓÃServletºÍJSP¼¼Êõ¡£Servlet¿ØÖÆÒµÎñÁ÷ת£¬JSPÔò¸ºÔðÒµÎñ´¦Àí½á¹ûµÄÏÔʾ¡£´Ëʱ£¬½«´óÁ¿Óõ½Öض¨Ïò¼¼Êõ¡£
¡¡¡¡Öض¨Ïò¼¼Êõ¿ÉÒÔ·ÖΪÁ½À࣬һÀàÊǿͻ§¶ËÖØ¶¨Ïò£¬Ò ......
Ò»£¬jsp³öÏֵĵÄÔÒò
¿´Á½¶Î´úÂëµÄ¶Ô±È
1 servletʵÏÖ
public class Welcome extends HttpServlet {
int num = 1;
public void doGet(HttpServletRequest request,
&nbs ......