-
转发和重定向
1)转发:RequestDispatcher getRequestDispatcher(java.lang.String path)
a)地址栏不会改变
b)转发只能转发到当前web应用内的资源
c)可以在转发过程中,可以把数据保存到request域对象中
2)重定向:response.sendRedirect("success.jsp");
a)地址栏会改变,变成重定向到地址。
b)重定向可以跳转到当前web应用,或其他web应用,甚至是外部域名网站。
c)不能再重定向的过程,把数据保存到request中。
结论: 如果要使用request域对象进行数据共享,只能用转发技术!!!
- 在JSP页面中跳转的页面的几种情况:
1.<%response.getRedirect(request.getContextPath()+/目标页面名字加后缀) %>
不推荐使用,在jsp页面中加入了java代码
2.首先引入<%@taglib uri="http"//java.sun.com/jsp/jstl/core" prefix="c"%>
然后使用标签:<c:redirect url="/目标页面加后缀"></c:redirect> 默认跳转到所在项目的页面,也可以自己改变,在属性class中加入要重定向的项目。
3.jsp自己的标签:
<jsp:forward page=" "></jsp:forward>
-
Struts-tags:
在jsp页面中引入:<%@taglib uri="/struts-tags" prefix="s" %>