HttpServletResponse


protectedvoid doGet(HttpServletRequestrequest, HttpServletResponseresponse)throws ServletException, IOException {

//设置状态码,自己设置后,tomcat不再给我们设置。

response.setStatus(404);

}

通过response设置响应头

addHeader(String name,String value);

addIntHeader(String name, int value);

addDateHeader(String name, long date);


setHeader(String name,String value);

setIntHeader(String name, int value);

SetDateHeader(String name, long date);

其中add表示添加,而set表示设置。

重定向:

特点1、访问服务器两次。  2、地址栏的地址发生变化。

重定向,需要:状态码302,响应头:location代表重定向的地址。

protectedvoid doGet(HttpServletRequestrequest, HttpServletResponseresponse) throws ServletException, IOException {

// TODO Auto-generated method stub

//没有响应,告知客户端去重定向到servlet2

//1、设置状态码302

response.setStatus(302);

//2、设置响应头Location

response.setHeader("Location","/web14/servlet2");


//方式二,封装成一个重定向的方法sendRedirect(url)

//response.setRedirect("web14/servlet2");

//方式三,定时刷新,设置定时刷新的头

response.setHeader("refresh","5;url=http://www.baidu.com");

}


6.通过response设置响应体

(1)响应体设置文本

PrintWriter  getWriter()

获得字符流,通过字符流的write(String  s)方法可以将字符串设置到response缓冲区中,随后Tomcat会将response缓冲区中的内容组装成http响应返回给浏览器端。

关于设置中文的乱码问题

原因:response缓冲区的默认编码是iso8859-1,此码表中没有中文,可以通过response的setCharacterEncoding(String  charset)设置response的编码。但我们发现客户端还是不能正常显示文字。

 response.setCharacterEncoding("UTF-8");

告知客户端请使用urf-8解码。

//通过一个头Content-Type告知客户端使用何种码表

response.setHeader("Content-Type","text/html;charset=UTF-8");

response.setContentType("text/html;charset=UTF-8");


(2)响应头设置字节

ServletOutputStream  getOutputStream()

获得字节流,通过该字节流的write(byte[]  bytes)可以向 response缓冲区中写入子节,再由Tomcat服务器将字节内容组成http响应返回给浏览器。

response细节点:

1)response获得的流不需要手动关闭,Tomcat容器会帮助我们关闭。

2)getWriter和getOutputStream不能同时存在。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值