RequestDispatcher.include(String str);用法。

简单的做了个测试,两个servlet,两个jsp页。
public   class  TestDispatcher  extends  javax.servlet.http.HttpServlet  implements         javax.servlet.Servlet  {     public TestDispatcher() {         super();     }     protected void doGet(HttpServletRequest request,             HttpServletResponse response) throws ServletException, IOException {         doPost(request, response);     }     protected void doPost(HttpServletRequest request,             HttpServletResponse response) throws ServletException, IOException {             RequestDispatcher rd ;         rd = request.getRequestDispatcher("TestDispatcher1");         rd.include(request, response);         //String hello = (String) request.getAttribute("hello");         //System.out.println(hello);         rd = request.getRequestDispatcher("/test/test51.jsp");         rd.include(request, response);         rd = request.getRequestDispatcher("/test/test5.jsp");         rd.include(request, response);     } }
public   class  TestDispatcher1  extends  javax.servlet.http.HttpServlet  implements         javax.servlet.Servlet  {     public TestDispatcher1() {         super();     }     protected void doGet(HttpServletRequest request,             HttpServletResponse response) throws ServletException, IOException {         doPost(request, response);     }     protected void doPost(HttpServletRequest request,             HttpServletResponse response) throws ServletException, IOException {              request.setAttribute("hello""hello");             response.getWriter().write("this is servlet2<br>");              response.sendRedirect("http://www.csdn.net");     } }
<% @ page language="java" contentType="text/html; charset=ISO-8859-1"     pageEncoding="ISO-8859-1" %>      <% @ taglib uri="/WEB-INF/c.tld" prefix="c"  %> <! DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" > < html > < head > < meta  http-equiv ="Content-Type"  content ="text/html; charset=ISO-8859-1" > < title > Insert title here </ title > </ head > < body >      < c:out  value ="${hello}" ></ c:out >         <br>     this is test51.jsp.         <br> </ body > </ html >
<% @ page language="java" contentType="text/html; charset=ISO-8859-1"     pageEncoding="ISO-8859-1" %> <! DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" > < html > < head > < meta  http-equiv ="Content-Type"  content ="text/html; charset=ISO-8859-1" > < title > Insert title here </ title > </ head > < body > this is test5.jsp. </ body > </ html >
输出结果:     this is servlet2                     hello
                    this is test51.jsp
                    this is test5.jsp 总结:servlet1中include另外一个servlet2,会计算servlet2,最终转向servlet1决定,servlet2中的request和response对象中存储的数据被和并到servlet1的request和response对象中。 servlet中include一个jsp页,相当于:jsp中<%@ include file="XXX.jsp" %>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值