web学习笔记-Servlet

Servlet
在这里插入图片描述
1.Servlet 是java规范之一,规范就是接口
2.Servlet 也是javaweb三大组件之一。三大组件分别是Servlet程序,Fitter过滤器,;Listener监听器
3.Servlet是运行在服务器上的一个java小程序,他可以接收客户端发送过来的请求,并相应数据给客户端

http:// 表示http协议
localhost 是服务器的ip
:8080 是服务器的端口号
/工程路径
/资源路径

Servlet的生命周期
1.Servlet类的加载 字节码文件加载到虚拟机的过程
2.对象的创建 调用方法
3.servlet的初始化工作init方法 重写父类的init
4.调用service方法处理请求和响应请求
doget dopost
5.调用销毁destroy方法
特点:
在第一次访问的时候就会执行构造器,init初始化方法 不随多次访问而多次执行
每次访问的时候都会执行service方法
在web工程停止的时候才会调用摧毁方法

Servlet继承体系
interface Servlet 接口,知识负责定义Servlet程序的访问规范
Class GenericServlet 实现了Servlet接口,做了很多的空实现。并且持有一个ServletConfig类的引用,并对ServletConfig的使用做一些方法
Class HttpServlet抽象类实现service()方法,并实现了请求的分发处理。 其对象代表客户端的请求,当客户端通过HTTP协议访问服务器的时候,HTTP请求头中的所有信息都封装在这个对象当中,开发人员通过这个对象的方法,可以获得客户端的这些信息。

1.ServletConfig类
Servlet程序的配置信息类
三大作用:获取Servlet程序的别名Servlet-name的值,获取初始化参数init-param,获取ServletContext对象
Servlet程序和ServletConfig对象都是由Tomcat负责创建,我们负责使用
Servlet程序默认是第一次访问的时候创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的ServletConfig对象

2.ServletContext类
是一个接口,表示Servlet上下文对象
一个web工程,只有一个ServletContext对象实例
ServletContext对象是一个域对象
域对象是可以想Map一样存取数据的对象,叫做域对象,这里的域指的是存取数据的操作范围
四个作用:1.获取web.xml中配置的上下文参数context-param 2.获取当前的工程路径 3.获取工程部署后在服务器硬盘上的绝对路径 4.像Map一样存取数据

Http协议
是指双方或者多方互相约定好,大家都需要遵守的规则,叫做协议
所谓的HTTP协议就是指,客户端和服务器之间通信的时候,发送的数据,需要遵守的规则,叫做HTTP协议
HTTP协议中的数据也叫做报文

请求的HTTP协议格式
客户端给服务器发送数据叫做请求,服务器给客户端回传数据叫做响应
请求又分为get请求和post请求
get请求
1.请求行
请求方式 GET
请求的资源路径
请求的协议的版本号 HTTP
2.请求头
key:value 组成 不同的键值对,表示不同的含义
常见的请求
Accept 告诉服务器,客户端可以接受的数据类型
Accept-Langguage:告诉服务器客户端可以接受的语言类型
User-Agent:就是浏览器的信息
Accept-Encoding:告诉浏览器,客户端可以接受的数据编码压缩格式
Host:表示请求的服务器ip和端口号
Connection:告诉服务器请求连接如何处理
Keep-Alive:告诉服务器回传数据不要马上关闭,保持一小段时间的连接
Closed:马上关闭

POST请求
1.请求行
请求的方式 POST
请求的资源路径
请求的协议和版本号
2.请求体
Accept 告诉服务器,客户端可以接受的数据类型
Accept-Langguage:告诉服务器客户端可以接受的语言类型
Referer:表示请求发起时,浏览器地址中的地址
User-Agent:就是浏览器的信息
Host:表示请求的服务器ip和端口号
Content-Type:表示发送的数据的类型
Content-Length:表示发送的数据的长度
Cache-Control:表示如何控制缓存

哪些是get请求,哪些是post请求
get请求
1.form标签 method=get
2.a标签
3.link标签引入css
4.Script标签引入js文件
5.img标签引入图片
6.iframe引入html页面
7.在浏览器地址栏中输入地址后敲回车

响应的HTTP协议格式
1.响应行
响应的协议和版本号
响应状态码
响应状态描述符
2.响应头
key:value 不同的响应头,有不同的含义
空行(空行之后就是响应体)
3.响应体
回传给客户端的数据

HttpServletRequest类
每次只要有请求进入Tomcat服务器,该服务器就会把请求过来的HTTP协议信息解析好封装到Request对象中。然后传递到service方法中给我们使用。我们可以通过该类对象,获取到所有请求的信息

请求的转发
请求转发是指,服务器受到请求后,从一次资源跳转到另一个资源的操作叫做请求转发
特点:浏览器地址栏没有变化,他们是一次请求,他们共享request域中的数据,可以转发到WEB-INF目录下,不可以访问工程外的资源

web中的相对路径和绝对路径
在javaweb中,路径分为相对路径和绝对路径
相对路径是:
. 表示当前目录
… 表示上一级目录
资源名 表示当前目录、资源名
绝对路径
http://ip:port/工程路径/资源路径
在web中/是一种绝对路径。
/如果被浏览器解析,得到的地址是:http://ip:port/
如果被服务器解析,得到的地址是http://ip:port/工程名

请求重定向
请求重定向,是指客户端给服务器发送请求,然后服务器告诉客户端说。我给你一些地址
你去新的地址访问,叫坐请求重定向(也许之前的地址可能已经被废弃)
设置状态码302
设置响应头,说明新的地址

特点:浏览器地址栏会发生边年华,会有两次请求,不共享request域中的数据,不能访问web-inf下的资源,可以访问工程外的资源

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip
综合小区管理系统管理系统按照操作主体分为管理员和用户。管理员的功能包括报修管理、车位管理、车位分配管理、出入管理、字典管理、房屋管理、物业费缴纳管理、公告管理、物业人员投诉管理、我的私信管理、物业人员管理、用户管理、管理员管理。用户的功能包括管理部门以及部门岗位信息,管理招聘信息,培训信息,薪资信息等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 综合小区管理系统管理系统可以提高综合小区管理系统信息管理问题的解决效率,优化综合小区管理系统信息处理流程,保证综合小区管理系统信息数据的安全,它是一个非常可靠,非常安全的应用程序。 管理员权限操作的功能包括管理公告,管理综合小区管理系统信息,包括出入管理,报修管理,报修管理,物业费缴纳等,可以管理操作员。 出入管理界面,管理员在出入管理界面中可以对界面中显示,可以对招聘信息的招聘状态进行查看,可以添加新的招聘信息等。报修管理界面,管理员在报修管理界面中查看奖罚种类信息,奖罚描述信息,新增奖惩信息等。车位管理界面,管理员在车位管理界面中新增。公告管理界面,管理员在公告管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息。
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值