JSP页面跳转大全
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JSP页面跳转大全
/yuxiangtong0524@126/blog/static/8008616320103215348290/JSP中的跳转:(1). forward()方法
使用到javax.servlet.RequestDispatcher类
RequestDispatcher rd = getServletContext().getRequestDispatcher("url");
rd.forward(requestVar,requestVar); //传递servlet的入口参数
/*forward函数已经把原页面的request,response对象传入新的页面,因此这新旧页面拥有相同的request,response对象。request.getparameter("var")就可以得到相应的值.*/
/*forward()是直接在server做的,浏览器并不知道,也不和浏览器打交道,浏览器的地址不变化。*/
即:
getServletContext().getRequestDispatcher("url").forward(requestVar,responseVar);
服务器端Servlet进行转向的4种方法:
1.ServletContext的getRequestDispatcher()
2.ServletContext的getNamedDispatcher()
3.ServletRequest的getRequestDispatcher()
4.ServletResponse的sendredirect()进行转向。
forward方法,因为这些这样比较高效。只有在forward方法不能使用时,再使用servletresponse的sendredirect()方法。
(2).response.sendRedirect(url);
其实是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,所以用sendRedirect时,浏览器的地址栏上可以看到地址的变化。新页面不能处理旧页面的pagecontext
(request,response,...)对象.
在response.sendRedirect之后,应该紧跟一句return;
(3).HTML语言的自动跳转
0是等待时间,如果设置为5表示等待5s后开始跳转
…………
(4).JavaScript跳转
A:
window.location.replace("");
B: 也可以直接给window.location属性赋值,window.location="url",与A不同的是有历史记录
C:
document.location.href("");
对于document,location不是不是对象,document.location=document.url
D: history对象的forward(),back(),go()方法.go()方法需要一个整形入口参数
等价于返回上一步
E: document.formName.action="test.jsp";
document.formName.submit(); //使用JS提交的方式
第一种:
window.location.href="login.jsp?backurl="+window.location.href;
第二种:
alert("返回");
window.history.back(-1);
第三种:
window.navigate("top.jsp");
第四种:
self.location='top.htm';
第五种:
alert("非法访问!");
top.location='xx.jsp';
(5).
如:
如果你使用了非缓冲输出的话,那么使用
JSP页面跳转方法荟萃