javaweb_09-response实现请求重定向和response的一些细节
2013-02-16 10:13
267 查看
09-response实现请求重定向和response的一些细节
response实现请求重定向和response的一些细节
注意:1+2 等效 3;
1,response.setStatus(302);
2,response.setHeader("location","/day06/index.jsp"); 3,response.sendRedirect("/day06/index.jsp");
* 重定向的特点: * 1,浏览器会向服务器发送两次,意味着就有2个request\response * 2,用重定向技术,浏览器地址栏会发生变化 * 3,用户登录 ** 用户登录和显示购物车时,通常使用重定向,一般情况下不使用,用forward.如下:
如果同时出现字节流和字符流
response.getOutputStream();
response.getWriter();
就会出现下面的异常:
java.lang.IllegalStateException: getOutputStream() has already been called for this response
getOutputStream和getWriter这两个方法互相排斥,调用了其中的任何一个方法后,就不能再调用另一方法。
Servlet程序向ServletOutputStream或PrintWriter对象中写入的数据将被Servlet引擎从response里面获取,Servlet引擎将这些数据当作响应消息的正文,然后再与响应状态行和各响应头组合后输出到客户端。
Serlvet的service方法结束后,Servlet引擎将检查getWriter或getOutputStream方法返回的输出流对象是否已经调用过close方法,如果没有,Servlet引擎将调用close方法关闭该输出流对象
response实现请求重定向和response的一些细节
注意:1+2 等效 3;
1,response.setStatus(302);
2,response.setHeader("location","/day06/index.jsp"); 3,response.sendRedirect("/day06/index.jsp");
* 重定向的特点: * 1,浏览器会向服务器发送两次,意味着就有2个request\response * 2,用重定向技术,浏览器地址栏会发生变化 * 3,用户登录 ** 用户登录和显示购物车时,通常使用重定向,一般情况下不使用,用forward.如下:
this.getServletContext().getRequestDispatcher("/message.jsp").forward(request,response);
response实现请求重定向
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("ResponseDemo8"); //response.setStatus(302); //response.setHeader("location","/day06/index.jsp"); response.sendRedirect("/day06/index.jsp"); }
response的一些细节
getOutputStream和getWriter方法分别用于得到输出二进制数据、输出文本数据的ServletOuputStream、Printwriter对象。如果同时出现字节流和字符流
response.getOutputStream();
response.getWriter();
就会出现下面的异常:
java.lang.IllegalStateException: getOutputStream() has already been called for this response
getOutputStream和getWriter这两个方法互相排斥,调用了其中的任何一个方法后,就不能再调用另一方法。
Servlet程序向ServletOutputStream或PrintWriter对象中写入的数据将被Servlet引擎从response里面获取,Servlet引擎将这些数据当作响应消息的正文,然后再与响应状态行和各响应头组合后输出到客户端。
Serlvet的service方法结束后,Servlet引擎将检查getWriter或getOutputStream方法返回的输出流对象是否已经调用过close方法,如果没有,Servlet引擎将调用close方法关闭该输出流对象
相关文章推荐
- request实现请求重定向和request的一些细节
- javaweb-day06-2&3 (Servlet - Response - 输出随机图片、请求重定向、web工程的URL地址写法、getOutputStream和getWriter互斥)
- response实现请求重定向
- request和response的转发、重定向、请求包含小细节
- 关于servlet+jsp+java实现Web登陆页界面的一些笔记(一)
- java 中的HashMap的一些实现细节
- javaweb之response重定向
- Java类中继承、接口实现的一些细节
- javaWeb 简单注册登录(含数据库连接) -- (三) 实现用户注册请求的响应
- intellij idea java环境配置及导出java web war包的一些细节
- JAVAWEB开发之HttpServletResponse和HttpServletRequest详解(上)(各种乱码、验证码、重定向和转发)
- 2.1、Spring Web MVC是什么 Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职
- Java Web中内置对象--response重定向
- Java中类继承、接口实现的一些细节(长期更新)
- jQuery框架+DWR框架实现的Java Web中的Ajax效果(异步请求,局部刷新)
- javaEE:day9-request和response的转发、重定向、请求包含小细节
- javaEE------------------有关servlet的一些细节(输出流以及转发、重定向和请求包含)
- javaWeb如何实现请求、响应?
- 关于servlet+jsp+java实现Web登陆页界面的一些笔记(四)
- javaweb servlet实现简单的mvc分发请求