web组件的三种关联关系

来源:互联网 发布:魔兽世界加速器mac 编辑:程序博客网 时间:2024/05/16 00:42

请求转发:

如果当前的servlet组件要把请求转发给一个JSP组件,如hello.jsp,可以在servlet的service()方法中

执行以下代码:
RequestDispatcher rd=request.getRequestDispatcher("hello.jsp");
rd.forward(request,response);


在jsp页面中,可以使用<jsp:forward>标签转发请求,
<jsp:forward page="hello.jsp"/>

 

请求重定向

response.sendRedirect("http://www.baidu.com");

 

请求重定向与请求转发到区别:
web组件可以将请求重定向到任一URL,而不仅仅是同一应用中的URL.
重定向到源组件和目标组件之间不共用同一个HttpServletRequest对象,因此不能共享request范围内的共享数据

 

包含
Servlet类使用javax.servlet.RequestDispatcher.include()方法包含其他的web组件,例如,如果当前的Servlet组件包含

了三个JSP文件:header.jsp  main.jsp和footer.jsp,则可以在Servlet的service()方法中执行以下代码:
RequestDispatcher rd;
rd=req.getRequestDispatcher("/header.jsp");
rd.include(req,res);
rd=req.getRequestDispatcher("/main.jsp");
rd.include(req,res);
rd=req.getRequestDispatcher("/footer.jsp");
rd.include(req,res);


在JSP文件中,可以通过<include> 指令来包含其他资源:
<% @include file="header.jsp"%>
<% @ include file="main.jsp"%>
<% @ include file="footer.jsp"%>

 

原创粉丝点击