servlet加强&HTTP协议&xml
1、servlet的发展史及生命周期
servlet的体系结构:
Servlet的生命周期:
初始化(创建):第一次访问该servlet时初始化,调用的是init()
service(工作):每次访问servlet都会执行,调用的是service(),然后根据请求方式去执行
销毁(死亡):服务器关闭时销毁,调用的是destroy()
可否服务器一启动,就让该servlet创建?
可以,在配置文件XMl中添加标签<load-on-startup>,标签体内容大于0,表示优先级
url-pattern
问1:一个servlet可否配置多个路径(可以)
问2:一个路径不否对应多个servlet(不可以),会保错
servlet的匹配顺序
Servlet3.0
可以使用注解的方式:
2、HTTP协议
HTTP协议的概述:
什么是HTTP协议:
HTTP协议:超文本传输协议,是互联网上应用最为广泛的一种网络协议。
HTTP协议:专门用来进行超文本信息传输的规定和规范,可以是的超文本传递更为快捷高效
协议:规定,规则,规范
该协议是为了是的浏览器和服务器之间请求响应传递的超文本信息更加快捷高效。
Http协议的作用及特点:
作用:http协议是学习javaweb开发的基石,是为了使得浏览器和服务器之间的请求/响应传递的超文本信息更加快捷高效。
http协议的特点:
基于请求/响应模型。请求和响应必须成对;现有请求后有响应。
http协议的版本:
http1.0版本:创建一次连接,获取一个资源,效率低下。
http版本:复用连接,效率比较高
http协议的组成:
请求协议和响应协议
http请求的详解
请求协议:请求行、请求头、请求体
get和post的区别:
1、get请求携带的参数在请求行上、post在请求体中
2、安全性方面。get不安全,post相对安全
3、提交数据量方面。 get提交数据量有限,post提交数据量无上限
常见请求头 |
描述(了解) |
Referer |
浏览器通知服务器,当前请求来自何处。(防盗链) |
Cookie |
与会话有关技术,用于存放浏览器缓存的cookie信息。(会话技术) |
User-Agent |
浏览器通知服务器,客户端浏览器与操作系统相关信息 |
Connection |
保持连接状态。Keep-Alive 连接中,close 已关闭 |
Host |
请求的服务器主机名 |
Content-Length |
请求体的长度 |
Content-Type |
如果是POST请求,会有这个头,默认值为application/x-www-form-urlencoded,表示请求体内容使用url编码 |
Accept: |
浏览器可支持的MIME类型。 MIME类型:互联网上为了具体传递文件类型的一种方式。 扩展名类型:硬盘上为了保存数据的一种文件类型方式,例如:*.html,*.jpg MIME格式:大类型/小类型[;参数] 例如: text/html ,*.html,html格式的文本 text/css,*.css, css格式的文本 image/JPEG,*.jpg , JPEG格式的图片 |
Accept-Encoding |
浏览器通知服务器,浏览器支持的数据压缩格式。如:GZIP压缩 |
Accept-Language |
浏览器通知服务器,浏览器支持的语言。各国语言(国际化i18n) |
If-Modified-Since |
浏览器通知服务器,本地缓存的最后变更时间。与另一个响应头组合控制浏览器页面的缓存。(目前使用频率不高) |
http响应的详解
响应协议:相应行、响应头、响应体。
状态码:
200:响应成功
404:路径错误
304:浏览器缓存(清除ctrl+shift+delete)
500:服务器内部异常
405:方法找不到
302:重定向
响应头:
常见响应头 |
描述(了解) |
Location |
重定向的路径 指定响应的路径,需要与状态码302配合使用,完成跳转。 |
Content-Type |
响应正文的类型(MIME类型) |
Content-Disposition |
正文-配置。 在文件下载时才会使用 通过浏览器以下载方式解析正文 取值:attachment;filename=xx.zip |
Set-Cookie |
与会话相关技术。服务器向浏览器写入cookie 服务器和浏览器之间传递的一张小纸条(Day15讲) |
Content-Encoding |
服务器使用的压缩格式 取值:gzip |
Content-length |
响应正文的长度 |
Server |
指的是服务器名称,默认值:Apache-Coyote/1.1。可以通过conf/server.xml |
Last-Modified |
服务器通知浏览器,文件的最后修改时间。与If-Modified-Since一起使用。(目前不用) |
响应体:在浏览器上看到的资源信息
访问的是html,响应就是html代码
访问图片:响应体是图片的二进制信息。
3、XML
xml的作用:
1、存储数据
2、传输数据的一种格式(后期webservice会使用到。。轻量级的json)
3、配置文件(注解用的较多)
如何书写xml
xml文件数据由5个组成元素构成,文档声明、元素element、属性、注解、注释、CDATA区域
文档声明:
1、以<?开始 以?>结束
2、文档声明必须放置在首行
3、xml 声明该文档是一个xml文档
4、version 声明xml的版本
5、encoding 声明文档的编码方式
元素element
1.元素是XML文档中最重要的组成部分;
2.普通元素的结构由开始标签、元素体、结束标签组成。
3.元素体:元素体可以是元素,也可以是文本
4.空元素:空元素只有标签,而没有结束标签,但元素必须自己闭合 <br/>
5.元素命名区分大小写
不能使用空格,不能使用冒号不建议以XML、xml、Xml开头
6、格式化良好的XML文档,必须只有一个根元素。
CDATA区域
格式:<![CDATA[]]>
作用:如果有一些特殊字符不想转义,就可以将其写在CDATA区域中,写在该区域中的内容会原样输出
常见的转义字符: