1.servlet的最主要作用就是处理客户端的请求,并对客户端进行响应。所以对于每次的请求,web服务器在调用service方法之前,都会创建两个对象,一个是HttpServletRequest对象,一个是HttpServletResponse对象。需要注意的是,Web服务器运行过程中,每个Servlet都会只创建一个实例对象,不过每次请求都会调用Servlet实例的service(ServletRequest req, ServletResponse res)方法,这里HttpServletRequest是ServletRequest的子类,HttpServletResponse是ServletResponse的子类。
HttpServletResponse对象
专门用来封装http响应消息,响应消息分为状态行,响应消息头,消息体三部分;
1.发送状态码的相关的方法;
1.1:setStatus(int status)方法;该方法用于设置Http消息的状态码,并生成响应状态行,只要通过setStatus方法设置了状态码
即可实现状态行的发送;
1.2setError(int sc)方法用于表示错误信息的状态码;
2.发送响应消息头的下相关的方法;
addHeader,setHeader,addIntHeader,setIntHeader方法都用于设置各种头字段;而setContentType(),setLocale(),setCharacterEncoding()用于设置字符编码;
3.发送响应消息体的相关方法
1.getOutputStream()方法:直接输出字节数组中的二进制数据
2.getWriter()方法:直接输出字符文本的网页文档
response对象的getOutputStream和getWriter()不可同时使用否则会相互排斥;
解决中文输出乱码问题
response.setContentType("text/html:charset=utf-8");
实现网页的定时跳转
response.setHeader("Refresh","时间;地址");
请求重定向
rsponse.sendRedirect("链接地址");