servlet+Http

Servlet:server applet

  1.概念:运行在服务器端的小程序。

    *servlet就是一个接口,定义了Java类被服务器访问到(tomcat识别)的规则。

    *我们定义一个类,实现servlet接口,复写其方法。

  2.步骤:

    1.创建Java EE项目

    2.定义一个类,实现Servlet接口

    3.实现接口中的抽象方法

    4.配置Servlet

  3.执行原理:

    1.当服务器接收到客户端浏览器的请求后,会解析请求url路径,获取访问的servlet的资源路径。

    2.查找web.xml文件,查看是否有其路径

    3.tomcat会将字节码文件加载到内存,并且创建其对象

    4.调用具体的方法

  4.生命周期:

    1.被创建:执行init方法,只执行一次,可改变执行顺序(修改web.xml文件)

    2.提供服务:执行service方法,执行多次

    3.被销毁:执行destroy方法,执行一次

  5.servlet注解

    @WebServlet()在类前写  括号中写资源路径
        String name() default "";
        String[] value() default {};
        String[] urlPatterns() default {};
        int loadOnStartup() default -1;
        WebInitParam[] initParams() default {};
        boolean asyncSupported() default false;
        String smallIcon() default "";
        String largeIcon() default "";
        String description() default "";
        String displayName() default "";

Http:

  1.概念:Hyper Text Transfer Protocol 超文本传输协议

    *传输协议:定义了,客户端和服务器端通信时,发送数据的格式

    *特点:

      1.基于TCP/IP的高级协议

      2.默认端口号:80

      3.基于请求/响应模型的:一次请求对应一次响应

      4.无状态的:每次请求之间相互独立,不能交互数据

    *历史版本:

      *1.0:每一次请求响应都会建立新的连接

      *1.1:复用连接

  2.请求消息数据格式

    1.请求行

      请求方式 请求url 请求协议/版本

      GET /login.html    HTTP/1.1

      * 请求方式:

        * HTTP协议有7中请求方式,常用的有2种

         * GET: 

          1. 请求参数在请求行中,在url后。

          2. 请求的url长度有限制的

          3. 不太安全

         *POST:

          1. 请求参数在请求体中

          2. 请求的url长度没有限制的

          3. 相对安全

    2.请求头:客户端浏览器告诉服务器一些信息

      请求头名称: 请求头值

      * 常见的请求头:

       1. User-Agent:浏览器告诉服务器,我访问你使用的浏览器版本信息

         * 可以在服务器端获取该头的信息,解决浏览器的兼容性问题

       2. Referer:http://localhost/login.html

         * 告诉服务器,我(当前请求)从哪里来?

          * 作用:

            1. 防盗链:

            2. 统计工作:

    3.请求空行

      空行,就是用于分割POST请求的请求头,和请求体的。

    4.请求体(正文):

      * 封装POST请求消息的请求参数的

      

 
 
原文地址:https://www.cnblogs.com/jamers-rz/p/13799645.html