20160323servlet学习笔记常见状态码消息头的含义

1.http响应状态行常见状态码

200:代表整个请求和相应过程中没有发生错误.

302:当向服务器请求一个资源时,服务器返回302表是让浏览器转向另外一个资源

304:当客户端发出get请求时,服务器判断页面没有更新则返回304状态码.

404:找不到所访问的资源

500:服务器端出现错误

2.sendRedirect方法底层调用的实际上是setStatus(状态码)和setHeader("Location","路径")方法.

3.http响应消息头以及意义

Location:url(让浏览器重新定位到url)

Server:apache tomcat(告诉浏览器服务器使用的是tomcat)

Content-Encoding:gzip(告诉浏览器使用了gzip压缩)

Content-Length:80(告诉浏览器发送80个字节)

Content-Language:zh-cn(支持中文)

Content-Type:text/html;charset=GB2312(内容格式和编码)

Last-Modified:   (资源上次更新时间)

Refresh:2;url(过2秒刷新到url)

Content-Disposition:attachment;filename=aaa.zip(告诉浏览器有文件要下载)(servlet会将要下载的文件先读取到内存然后再发送给浏览器.)

Transfer-Encoding:chunked(传输的编码,校验和)

Set-Cookie:(cookie信息,以后分析)

Expires:-1(告诉IE怎么缓存页面)

Catch-Control:no-cache(告诉火狐等浏览器怎么缓存界面)

Pragma:no-cache(告诉其他浏览器怎么缓存页面)

Connection:close/Keep-Alive

Data:

4.<a href="/web/servlet?filename=xx.mp3">点击下载</a>这里传到servlet的参数filename=xx.mp3可以通过request.getParameter("filename");获取.

5.可以通过设置no-cache限制浏览器的缓存

6.也可以限制缓存有效时间response.setDateHeader("Expires", System.currentTimeMillis()+3600*1000);

7.response的getWriter方法向客户机回送字符数据,getOutputStream返回的对象,可以回送字符也可以是二进制数据.

8.如果回送字符应该选择PrintWriter对象,效率高.如果回送字节数据则只能使用OutputStream,需要注意的是这两个对象不能同时使用.

服务器先会把response信息给浏览器,然后服务器会检查response对象流对象,并将其关闭,所以如果同时使用两种流会报错.所以在servlet里面关闭或者不关闭流都可以.







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值