重定向
2015-12-28 15:27
162 查看
1. 什么是重定向呢?
重定向就是客户端给服务端一个请求,服务端找到客户端指定的AServlet,由于该AServlet并不能处理该请求,所以,给客户端相应一个信息头:“302,Location=Bservlet”,让客户端自动的再次发出请求,不过此时的请求地址却是BServlet。所以,重定向后的地址栏是,http://localhost:8080/BServlet。
如下图:
注意点:
重定向一共发生了两次请求、两次响应。
地址栏的地址是第二次请求的地址。
使用重定向的时候,不要使用输出流进行输出数据,不然会发生错误!
具体实现:
第一种:
response.setHeader("Location","/项目名/重定向的Servlet路径");
response.setStatus(302);
如:
response.setHeader("Location","/Test/BServlet"); //其中那个重定向的Servlet路径是指在xml配置的路径。
response.setStatus(302);//设置状态码302
第二种:(是把上面第一种方法进行封装得到的。它比上面第一种方法更加快捷。)
response.sendRedirect("/Test/BServlet");//它会自动给信息头设置为:Location:"/Test/BServlet"。
//状态码为302
重定向就是客户端给服务端一个请求,服务端找到客户端指定的AServlet,由于该AServlet并不能处理该请求,所以,给客户端相应一个信息头:“302,Location=Bservlet”,让客户端自动的再次发出请求,不过此时的请求地址却是BServlet。所以,重定向后的地址栏是,http://localhost:8080/BServlet。
如下图:
注意点:
重定向一共发生了两次请求、两次响应。
地址栏的地址是第二次请求的地址。
使用重定向的时候,不要使用输出流进行输出数据,不然会发生错误!
具体实现:
第一种:
response.setHeader("Location","/项目名/重定向的Servlet路径");
response.setStatus(302);
如:
response.setHeader("Location","/Test/BServlet"); //其中那个重定向的Servlet路径是指在xml配置的路径。
response.setStatus(302);//设置状态码302
第二种:(是把上面第一种方法进行封装得到的。它比上面第一种方法更加快捷。)
response.sendRedirect("/Test/BServlet");//它会自动给信息头设置为:Location:"/Test/BServlet"。
//状态码为302
相关文章推荐
- Unity Shader 学习笔记(九) UV动画Shader实例
- CentOS 6.5 配置 SSDB 1.8.0
- ubuntu 常用命令
- 动软代码生成器生成数据库文档
- ObjC 巧用反射和KVC实现JSON快速反序列化成对象
- java中的数据结构整理
- SQL与java数据库编程汇总(动态更新)
- hdu 5418(状态压缩dp+Floyd)
- 使用CXF和Jersey框架来进行Java的WebService编程
- Winform鼠标拖动改变控件大小、移动控件位置
- 动态二维数组
- iOS滚动视图(UIScrollView)
- python读取表格csv的方法
- 天购新玩法 引领电商发展新潮
- Android 开源组件 ----- Android LoopView无限自动轮转控件
- jquery垂直展开折叠手风琴二级菜单
- 音视频同步(播放)原理
- caffe中的loss函数
- 字符串处理函数puts()和gets()
- 如何在 Ubuntu 15.04 / CentOS 7 上安装 Android Studio