`
ps329795485
  • 浏览: 50522 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

JSP跳转方式

 
阅读更多

一:RequestDispatcher.forward()

是在服务器端起作用,当使用forward()时,Servlet engine 传递HTTP请求从当前的Servlet or jsp 到另外一个Servlet JSP 或普通HTML文件

可以进行参数传递 如:

重定向后浏览器地址栏URL不变


路径前必须带有"/", "/"的含义时项目名称 否则报如下异常:

在forward.jsp中取得参数为:



二:response.sendRedirect()

是在用户的浏览器端工作,sendRedirect() 可以带参数传递,比如servlet?name=zhangsan

重定向后在浏览器地址栏上会出现重定向页面的URL

例:重定向jsp


重定向servlet


比较:

a) 两个都可以实现页面的跳转 forward是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址

response.sendRedirect()则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接,这样,从浏览器的地址栏中可以看到跳转后的链接地址

b) 两者都可以跳转到jsp或者servlet 都可以传递参数
但response.sendRedirect()跳转后后面的代码将不会再执行

例:

前者更加高效,在前者可以满足基本需要时,尽量使用RequestDispatcher.forward()方法

三:其他跳转方式

a)修改HTTP header的Location属性来重定向

b)通过设置直接修改地址栏来实现页面的重定向

c)设置jsp若干秒后 自动重定向















  


  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics