JavaEE响应对象

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LY121600HACKER/article/details/78472326

1.响应对象类型与生命周期

和请求对象类似,JavaEE响应要实现javax.servlet.http.HttpServletResponse接口。

而且在web组件开发中,不需要servlet和jsp自己创建对象,他们由web容器自动创建,并传递给
servlet和jsp的服务方法doGet和doPost,在服务处理方法中直接使用请求对象即可。

protected void doGet(HttpServletRequest request, HttpServletResponse response) 
throws ServletException, IOException{}

2.响应对象的功能

(1).设置响应状态码
(2).设置响应头信息
(3).设置响应体信息
(4).设置响应体发送方法

3.设置响应状态码

(1).public void setStatus(int code)
设置响应的状态码

response.setStatus(404);

(2).public void setStatus(int code,String message)
设置响应的状态码,同时设置自定义的状态消息

response.setStatus(404"URL not found!");

(3).public void sendError(int statuscode) throws IOException
向客户端发送指定的错误信息码,可以是任何数字

response.setCharacterEncoding("utf-8");
response.sendError(580);

(4).public void sendError(int statuscode,String message) throws IOException
向客户端发送指定的错误信息码和自定义状态消息

response.setCharacterEncoding("utf-8");
response.sendError(580,"自定义错误信息");

4.设置响应头信息

(1).public void setHeader(String name,String value)
设置字符串类型的响应头的名称和值

response.setHeader("Content-Type","text/html");

(2).public void setIntHeader(String name,String value)
设置整数类型的响应头的名称和值

response.setIntHeader("Content-Length",20);

(3).public void setDateHeader(String name,long date)
设置日期类型的响应头

response.setDateHeader("Modify-Date",909920);

5.设置响应体信息

(1).public void setContentType(String type)
设置响应内容类型MIME响应头

response.setContentType("utf-8");

(2).public void setContentLength(int length)
设置响应体长度,以字节为单位

response.setContentLength(10240);

(3).public setCharacterEncoding
设置响应字符集,包括响应状态码、响应头和响应体

response.setCharacterEncoding("utf-8");

(4).public void setBufferSize(int size)
设置响应体缓存字节数

response.setBufferSize(1024);

6.设置响应体发送方法

(1).文本类型响应体发送方法

①.设置响应类型

response.setContentType("text/html");

②.设置响应字符编码

response.setCharacterEncoding("utf-8");

③.取得字符流输出流对象

PrintfWriter out=response.getWriter();

④.向流对象发送文本数据

out.printfln(<title>java</title>);

⑤.清空流中缓存的字符

out.flush();

⑥关闭流

out.close();

(2).二进制类型响应体发送方法

①.设置响应类型

response.setContentType("image/jpeg");

②.取得字节流输出流对象

OutputStream out=response.getOutputStream();

③.向流对象发送字节数据

out.println(200);

④.清空流中缓存的字节

out.flush();

⑤.关闭流

cn.close();

猜你喜欢

转载自blog.csdn.net/LY121600HACKER/article/details/78472326