跳转方式比较
来源:互联网 发布:wordpress mac nginx 编辑:程序博客网 时间:2024/04/30 06:46
浏览器地址栏里的地址将改变(将请求地址重定向到指定的URL)
response.sendRedirect("mubiao.jsp");
浏览器地址浏览的地址不改变(服务器端直接跳转到指定的地址)
request.getRequestDispatcher().forward(request,response);
比如说有人打电话给公司前台找小王,这时候,公司的前台会有两种选择
一:通过转接的方式把电话转到小王那里(forward)
二:通过告诉对方小王的电话号码的方式让对方打给小王(sendRedirect)
response.sendRedirect(url)跳转到指定的URL地址,产生一个新的request,所以要传递参数只有在url后加参数,如:
url?id=1.
这种方式可以使相对地址,也可以是绝对地址
request.getRequestDispatcher(url).forward(request,response)是直接将请求转发到指定URL,所以该请求能够直接获得上一个请求的数据,也就是说采用请求转发,request对象始终存在,不会重新创建。而sendRedirect()会新建request对象,所以上一个request中的数据会丢失。
2....
redirect 会首先发一个response给浏览器, 然后浏览器收到这个response后再发一个requeset给服务器, 然后服务器发新的response给浏览器. 这时页面收到的request是一个新从浏览器发来的.
forward 发生在服务器内部, 在浏览器完全不知情的情况下发给了浏览器另外一个页面的response. 这时页面收到的request不是从浏览器直接发来了,可能己经放了数据.
参考:
参考文章1
参考文章2
- 跳转方式比较
- 比较JSP三种页面跳转方式
- JSP三种跳转方式的比较
- 五种JSP跳转方式比较
- Asp.net页面跳转方式比较
- ASP.net页面跳转方式比较
- ASP.net页面跳转方式比较
- ASP.net页面跳转方式比较
- 五种JSP跳转方式比较
- ASP.net页面跳转方式比较
- ASP三种页面跳转方式比较
- ASP.net页面跳转方式比较
- [转]ASP.net页面跳转方式比较
- JSP三种页面跳转方式的比较
- JSP三种页面跳转方式的比较
- JSP三种页面跳转方式的比较
- MVC中两种网页跳转方式的比较和区别
- ASP.NET中页面跳转的三种方式比较
- Python日志模块(第3篇)
- Ubuntu下安装Qt
- 软件开发者眼中的计算机的硬件架构和发展
- PyGTK编写多线程程序
- 浅析linux下usb鼠标和usb键盘usbhid驱动hid_parse_report报告描述符解析
- 跳转方式比较
- ireport子报表数据源
- 嵌入式Linux下USB驱动程序的设计
- 详细解说STL hash_map系列
- ASIHttpRequest登录与Basic验证
- Bitmap Drawable byte[]间的转换
- Tomcat 7.0 部署失败解决方案参考!
- 第十周任务(三)
- Linux环境下如何设置USB驱动程序