Servlet体系结构

Servlet体系结构
一, Servlet 接口(祖籍)
1,GenericSrevlet 是一个抽象类(实现了)Servlet接口(儿子)
2,HttpServlet 是一个抽象类(继承了)GenericSrevlet类(孙子)

二, GenericSrevlet (真正开发中并不用这种方式)
1,GenericServlet;将Servlet中的方法都做了空实现 只将service()方法定义为了抽象方法
2,将来定义Servlet类时只用重写service()方法即可
三,,,HttpServlet (对Http协议的封装和描述)
service
-7/判断请求方式
String method = req. getMethodO)|;
if(“GET”. equals (method)_ ) {
//get方式获取数据
doGet (); (het()post()请求方式)
}else if (“POST”. equals. (method) | ){
//post方式获取数据
doPost () ;
}
'doGet() 0}_
idoPost() {}
如果想要屏蔽get和post这两种请求方式可以使用HttpServlet
1,不用再次重写service()方法因为 Httpservlet里边的servIce方法已经干过了判断请求方式的事情
2,只需要复写doget()或者dopost()方法即可

Servlet的相关配置
7. Servlet相关配置

  1. urlpartten: Servlet访问路径
    1.一个Servlet可以定义多个访问路径: @WebServlet({" /d4" ,"/dd4" ," /ddd4"})
    2.路径定义规则:
  2. /xxx :路径匹配
  3. /xxx/xxx:多层路径, 目录结构
  4. *.do :扩展名匹配

HTTP :

*概念: Hyper Text Transfer Protocol 超文本传输协议
*传输协议:定义了,客户端和服务器端通信时,发送数据的格式
*特点:
1.基于TCP/ IP的高级协议
2.默认端口号:80
3.基于请求/响应模型的:一次请求对应一次响应
I
4.无状态的:每次请求之间相互独立,不能交互数据

*请求消息数据格式
1.请求行
请求方式_请求url请求协议/版本
请求方式;
HTTP有七种方式常用的有get和post
get;
1,请求参数在请求行后(在url后)
2,请求参数的长度是有限制的
3,不安全
post;
1,请求参数在请求体中
2,请求参数的长度没有限制
2,可以用来上传文件等比较大的数据
4,相对安全(至少不在请求行里显示)
GET /login.html HTTP/1.1
2.请求头
请求头名称:请求头值
*常见的请求头:

  1. User- Agent :浏览器告诉服务器,我访问你使用的浏览器版本信息
    可以在服务器端获取该头的信息,解决浏览器的兼容性问题
    2,Referer: http://localhost/login. html
    (告诉服务器我当前请求从哪里来)
    作用;
    1,防盗链(防止别人盗取链接)
    2,统计工作
    请求头名称:请求头值
    3.请求空行
    空行(就是一个空行 用来分隔请求头与请求体)
    4.请求体(正文)
    1,封装post的请求参数

请求消息字符串格式:
POST (请求方式)/login. html (url)
HTTP/1.1 (请求协议 版本信息)
Host: l ocalhost
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; X64; rv:60.0) Gecko/ 20100101 Firefox/60.0
(告诉浏览器可以接受什么样的信息)
Accept: text/html, application/ xhtml+xml ,application/xml ;q=0.9,
/*;q=0.8.
(可以接受的语言)
Accept- Language: zh-CN,zh;q=0. 8, zh- TW;q=0.7,zh-HK;q=0.5, en-US;q=0.3,en;q=0.2
(接受的压缩格式)
Accept-Encoding: gzip, deflate
(告诉服务器我当前请求从哪里来)
Referer: http://localhost/login. html
Connection: keep-alive
Upgrade- Insecure- Requests: 1
(请求空行)

username= zhangsan (请求体)

一,resquest对象和response对象的原理
1,resquest对象和response对象是由tomcat创建的我们只是使用它们
2,resquest对象是获取请求消息 response对象是来设置相应消息
二,resquest的继承体系
2. request对象继承体系结构:
ServletRequest ---->接口
| —>继承
HttpServletRequest – 接口
| —> 实现(tomcat实现)
org. apache . catalina . connector . RequestFacade类( tomcat)

tomcat在处理request和response对象的过程

  1. tomcat服务器会根据请求ur1中的资源
    路径,创建对应的ServlqtDemo1的对象。

  2. tomcat服务器,会创建request和
    response对象,request对 象中封装请求
    消息数据。

  3. tomcat将request和response两个对象
    传递给service方法,并且调用service方
    法。

4.程序员(我们),可以通过request
对象获取请求消息数据,通过通过
response对象设置响应消息数据

5.服务器在给浏览器做出响应之前,
会从response对象中拿程序员设置
的响应消息数据。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值