zoukankan      html  css  js  c++  java
  • Servlet学习总结,为理解SpringMVC底层做准备

    Servlet 一句话概括 :处理web浏览器,其他HTTP客户端与服务器上数据库或其他应用交互的中间层

    Servlet 生命周期 : 1.类加载,

             2.实例化并调用init()方法初始化该 Servlet,(只调用一次)

             3.service()(根据请求方法不同调用doGet() 或者 doPost(),此外还有doHead()、doPut()、doTrace()、doDelete()、doOptions()、destroy())

             4.销毁

    HelloWord 级别的使用:

    首先配置web.xmi

    <servlet>
        <servlet-name>HelloWorldDemo</servlet-name>
        <servlet-class>com.runoob.test.HelloWorld</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>HelloWorldDemo</servlet-name>
        <url-pattern>/helloWorld</url-pattern>
      </servlet-mapping>
    

    运行过程:

        1.浏览器输入对应的地址 例:http://localhost:8080/helloWorld,此时servlet-mapping中的url-pattern会识别到对应的请求,然后根据servlet-mapping中的servlet-name去到<servlet>标签中找到同名的servlet-name(所以名称要一致),然后找到对应的servlet-class

        2.如果初次调用,先会调用Servlet中的init()方法,之后是Service,前后端相互交互

        3 当识别到容器长久不用时就会自动销毁

    过滤器:

      Filter,在使用之前同样的要配置web.xml,规则与servlet类似

    <filter>
       <filter-name>LogFilter</filter-name>
       <filter-class>com.runoob.test.LogFilter</filter-class>
       <init-param>
          <param-name>test-param</param-name>
          <param-value>Initialization Paramter</param-value>
       </init-param>
    </filter>
    <filter-mapping>
       <filter-name>LogFilter</filter-name>
       <url-pattern>/*</url-pattern>
    </filter-mapping>

    init-param 标签可以给init()方法赋值

    其中需要掌握的方法是 doFilter,其余方法与servlet类似

    public void doFilter (ServletRequest, ServletResponse, FilterChain)
    该方法完成实际的过滤操作,当客户端请求方法与过滤器设置匹配的URL时,Servlet容器将先调用过滤器的doFilter方法。FilterChain用户访问后续过滤器
    
     
  • 相关阅读:
    C 运算符, 有符号数据运算,
    P1337 [JSOI2004]平衡点 / 吊打XXX 模拟退火
    [POI2011]Garbage 欧拉回路
    # bzoj2215: [Poi2011]Conspiracy 2-sat
    hdu1814 Peaceful Commission 2-sat
    2-sat相关复习
    #2718. 「NOI2018」归程 kruskal重构树
    JXOI2018守卫 区间DP
    [NOI1995]石子合并 四边形不等式优化
    3900: 交换茸角
  • 原文地址:https://www.cnblogs.com/woyaobianfei/p/9298460.html
Copyright © 2011-2022 走看看