• D02 Sping Boot 入门 Sping框架--Java Web之Servlet


    Servlet

    1、什么是Servlet

      1、servlet是JavaEE的规范之一。规范就是接口。

      2、servlet是Javaweb三大组件之一。三大组件分别是Servlet程序、Filter过滤器、Listener监听器。

      3、servlet是运行在服务器上的一个Java小程序,它可以接收客户端发过来的请求并响应数据给客户端。

    2、手动实现Servlet程序

      1、编写一个类去实现Servlet接口。

      2、实现service方法,处理请求并响应数据。

      3、到web.xml中去配置servlet程序的访问地址。

     

      在src中新建一个package,在package中新建一个类

        

       接着按快捷键alt+insert选择implements methods

      

       接着在web.xml中配置信息

      

       接着重启tomcat访问ip:port和ip:port/hello

    3、Servlet生命周期

      1、执行构造函数            // 第一次访问时创建servlet程序时调用

      2、执行init初始方法       // 第一次访问时创建servlet程序时调用

      3、执行service方法       // 每次访问时都会调用

      4、执行destroy销毁方法    // 在web工程停止时调用

       

     4、Servlet请求的分发处理

      在web文件夹里新建a.html

      

       在Servlet里的service函数里判断请求方式并处理请求

      

     5、通过继承HttpServlet类实现Servlet程序(实际开发常用这种方式)

      1、编写一个类继承HttpServlet类

      2、根据业务需要重写doGet和doPost方法

      3、到web.xml中配置Servlet的访问地址

      在package中新建HelloServlet2类,继承HttpServlet类

      

       重写doGet和doPost方法                                                                                         (在这里把super注释掉)

       

       到web.xml文件里去配置访问路径(servlet-class写错,改成<servlet-class>com.gychen.servlet.HelloServlet2</servlet-class>)

      

       

      写请求的页面(form)

        

     6、IDEA菜单生成Servlet程序

       

       

       在web.xml中配置路径,在html中配置按钮

    7、Servlet的继承体系  

       

     8、ServletConfig类(Servlet的配置信息类)

       ServletConfig类的三大作用

        1、可以获取Servlet程序的别名,即servlet-name的值

        2、获取初始化参数init-param

        3、获取ServletContext对象

          在Servlet程序里写入代码

           

           在web.xml中配置初始化信息

          

           结果

          

     9、ServletContext类

      a)什么是ServletContext类

        1、ServletContext是一个接口,它表示Servlet上下文对象。

        2、一个web工程,只有一个ServletContext对象实例。

        3、ServletContext对象是一个域对象。

          域对象是可以像Map一样存取数据的对象,这里的域指的是存取数据的操作范围。

                存数据    取数据      删除数据

          Map    put()      get()      remove()      

          域对象   setAttribute()      getAttribute()  removeAttribute()   

       b)ServletContext类的四个作用

        1、获取web.xml中配置的上下文参数context-param。

        2、获取当前的工程路径。

        3、获取工程部署后在服务器硬盘上的绝对路径。

        4、向Map一样存取数据。

        

        新建一个contextServlet类

        

         在web.xml中写入context-param信息

        

         结果

        

        像Map一样存取数据:新建一个contextServlet2类

        

     10、HttpServletRequest类  

      a)HttpServletRequest类的作用

        每次只要有请求进入Tomcat服务器,Tomcat服务器就会把请求过来的HTTP协议信息解析好封装到Request对象中

        然后传递到service方法(doGet和doPost)中供我们使用。可通过HttpServletRequest对象获取到所有请求的信息。

      b)HttpServletRequest类的常用方法

        Ⅰ、getRequestURI()        获取请求的资源路径

        Ⅱ、getRequestURL()          获取请求的统一资源定位符(绝对路径)

        Ⅲ、getRemoteHost()        获取客户端的ip地址

        Ⅳ、getHeader()           获取请求头

        Ⅴ、getParameter()        获取请求的参数

        Ⅵ、getParameterValues()     获取请求的参数(多个值的时候使用)

        Ⅶ、getMethod()          获取请求的方式(GET或POST)

        Ⅷ、setAttribute(key,value)       设置域数据

        Ⅸ、getAttribute(key)         获取域数据

        Ⅹ、getRequestDispatcher()     获取请求转发对象

         

         如何获取请求参数

          

          

        请求的转发

          什么是请求的转发?

            是指服务器收到请求后,从一个资源跳到另一个资源的操作。

            

            Servlet1

             

            Servlet2

             

     10、HttpServletResponse类 

       

       

       

        解决字符乱码

       

       

       

       

       

       

       

       请求重定向推荐用法

      

       

       

           

         

  • 相关阅读:
    题解:2018级算法第五次上机 C5-图2
    题解:2018级算法第四次上机 C4-最小乘法
    题解:2018级算法第四次上机 C4-商人卖鱼
    题解:2018级算法第三次上机 C3-Zexal的浩瀚星辰
    C语言算法动态规划板子题汇总
    QT样式表
    3.PCB-禁止布线层
    2.PCB-板切割槽
    1.PCB-板形设置
    变压器
  • 原文地址:https://www.cnblogs.com/nuister/p/12539646.html
Copyright © 2020-2023  润新知