2021-12-05  2021-12-05    1242 字   3 分钟

HTTP协议

http://localhost:8080/JavaWeb_day11_web/

协议规定客户端  服务器传递数据的格式

HTTP协议的内容
    请求
    	请求行 包含url信息  协议信息
    	请求头  包含用户发送的数据描述信息和浏览器相关的描述信息不需要手动是由浏览器处理的 
    	请求正文 请求体中携带的数据 用户登录注册输入的信息
    
    响应
    	响应行 协议信息版本号
    	响应头 服务器告诉浏览器的一些信息
    	响应正文服务器响应给浏览器的源码

4. Servlet

理解
    Servlet 是运行在 Web 服务器中的小型 Java 程序Servlet 通常通过 HTTP超文本传输协议接收和响应来自 Web 客户端的请求
     Servlet是一个Java接口
     需要运行在服务器中
     可以处理来自客户端的请求和响应
    
作用
    处理来自客户端的请求和响应
    
使用
     自定义类实现Servlet接口
     实现Servlet中未实现方法 5
     配置Servlet的访问路径
    在web.xml文件中配置
    <!--声明Servlet-->
    <servlet>
        <servlet-name>MyServlet1</servlet-name>
        <servlet-class>com.ujiuye.servlet.MyServlet1</servlet-class>
    </servlet>
    <!--配置访问路径-->
    <servlet-mapping>
        <servlet-name>MyServlet1</servlet-name>
        <!--http://localhost:8080/JavaWeb_day11_web/xx-->
        <url-pattern>/xx</url-pattern>
    </servlet-mapping>
            
使用注意事项
    1. Servlet是由谁实例化的 由tomcat服务器(Servlet容器)实例化的
    2. Servlet实例化几次只初始化一次
    3. Servlet什么时候初始化的第一次请求
    4. 一个Servlet可以设置多少个访问路径可以设置多个访问路径
    5. 一个路径可以访问多个Servlet吗一个路径只能映射一个Servlet
    6. 路径多元化
            /xx  一层
            /xx/xxx/xxxx 多层
            /*   除去已经配置过的路径的其他任意路径
            *.png  后缀的形式
            
浏览器请求Servlet的过程
   1. 当浏览器url中输入http://localhost:8080/JavaWeb_day11_web/xx
   2. 根据/xx 匹配web.xml中的<servlet-mapping>中的<url-pattern>
   3. 没有匹配到 报404未找到  如果匹配到
   4. 再根据匹配到的<servlet-mapping>中的<servlet-name>,根据这个<servlet-name> 进步匹配 <servlet>中的<servlet-name>
   
   5. 没有匹配到 报404未找到 如果匹配到
   6. 根据当前的<servlet-name>找对应的<servlet-class> 
   7. 反射机制加载当前类
   
Servlet的生命周期方法
	init 初始化方法  默认当第一次请求Servlet时执行该方法 对Servlet做初始化操作
	service 处理客户端请求和响应 实现浏览器和Servlet交互
	
	destory 销毁方法 服务器关闭 移出应用 tomcat销毁当前Servlet
	
	
Servlet的进化史
	1. GenericServlet抽象类 实现了Servlet接口并且实现了除service之外的其他方法
	2. HttpServlet 继承了GenericServlet 实现service方法 根据HTTP协议的请求方式执行不同的方法doXx,然后定义自己的service方法开发者使用只需要重写对应请求方式的doXx  或者重写service方法注解的方式使用HttpServlet

avatar
青山
悟已往之不谏 知来者之可追
一言
今日诗词
站点信息
本站访客数 :
本站总访问量 :