过了个春节假期,写博客也耽搁了些许时日。经娄老师提醒,今天开始把它拾起来。自己倒也有边学习边做记录的习惯,有专门的笔记本记录学习过程中遇到的问题和解决办法,或者干脆在书中空白处写几句话。与写博客相比,二者各有千秋,谈不上好与坏。不过,从长远来看,写博客这件事还是比做笔记有些优势的(当然不是否定做笔记这一学习方法),至少毕业搬家的时候省些力气吧,哈哈。所以呢,以后我也得养成坚持写博客的习惯,不能老让别人提醒,年龄都这么大了……
以上算是做个总结,接下来要写的是最近一段时间学习的收获。 这段时间一直在学习Java Web的东西。之前也在学习,不过我感觉这种技术性的内容对我来说,看视频比单纯看书有效率,特别是细节性的知识点,如果仅仅是看书的话,可能当时能记得住,但是知识点一旦多了,就很难对上号,只能再一遍去翻书,很费功夫。最近看了一些相关的学习视频,跟着课程总结出来一些东西,如下: ##GET请求与POST请求 用户如果没有设置,默认情况下浏览器向服务器发送的是GET请求。如果想改为POST,可通过更改表单的提交方式实现:
<form action="/1.html" method="post">
</form>
GET与POST的区别体现在数据表单上: 如请求方式为GET,则可以在请求的URL地址后以?的形式带上交给服务器的数据,多个数据之间以&分隔。 GET方式的特点:在URL地址后附带的参数是有限制的,其数据容量通常不能超过1K。 POST方式的特点:传递的数据量无限制,在请求的实体内容中向服务器发送数据。 ##HTTP请求中的常用头 Accept :用于告诉服务器,客户机支持的数据类型。 Accept-Charset :用于告诉服务器,客户机采用的编码。 Accept-Encoding :用于告诉服务器,客户机支持的数据压缩格式。 Accept-Language :用于告诉服务器,客户机的语言环境。 Host :告诉服务器访问的主机名。 If-Modified-Since:用于告诉服务器,资源的缓存时间。 Referer :用于告诉服务器,它是从哪个资源来访问服务器的(防盗链)。 User-Agent :用于告诉服务器,客户机的软件环境。 Cookie :可以通过这个头向服务器带数据(以后的博客会详细介绍)。 Connection :用于告诉服务器,这个请求结束后是保持连接还是关闭。 Date :时间。 ##HTTP响应的状态码(状态行中) 100199:表示成功接收请求。要求客户端继续提交下一次请求才能完成整个处理过程。 (不常用) 200299:表示成功接收请求并已完成整个处理过程,常用200. 300399:特别的,302,表示资源移动到新地址,客户端应去别处找资源;304、307,告诉客户端去查缓存。 400499:客户端请求有错误。常见的有404(服务器没资源),403(客户端没权限)。 500599:服务器端出现错误,常用500. ##HTTP响应头 Location :配合302状态码使用,用于告诉客户端应该去哪里去资源。 Server :告诉浏览器服务器的类型。 Content-Encoding :告诉浏览器数据的压缩格式。 Content-Length :回送数据的长度。 Content-Language :回送的语言环境。 Content-Type :回送的数据类型。可在web.xml文件中查询数据类型对应的填充内容。 Last-Modified :告诉浏览器当前资源的缓存时间。 Refresh :告诉浏览器多久刷新一次。 Conten-Disposition :告诉浏览器以下载方式打开数据。 Transfer-Encoding :告诉浏览器数据的传输格式。 Set-Cookie :(先不写,以后详述) Etag :缓存相关的头(实时更新~)。 Expires :告诉浏览器把回送的资源缓存多长时间(-1或0不缓存)。 Cache-Control:no-cache :控制浏览器不要缓存数据。 Pragma:no-cache :控制浏览器不要缓存数据。 Connection :用于告诉浏览器,这个请求结束后是保持连接还是关闭。 Date :时间。 ##HTTP请求头字段 Range头指示服务器只传输一部分Web资源,可实现断点续传功能.使用示例如下:
Range: bytes=1000-2000 传送1000-2000字节
Range: bytes=1000- 传送第1000个字节以后的内容
Range: bytes=1000 传送最后1000个字节
##HTTP响应头字段
Accept-Range:说明Web服务器是否支持Range。支持返回bytes,不支持返回none
Content-Range:指定返回的Web资源的字节范围。例如Content-Range:1000-3000/5000