zoukankan      html  css  js  c++  java
  • web总结

    一,web.xml的加载过程:当我们启动一个web项目时,容器(Tomcat)会首先读取web.xml,如果web.xml没有错,项目就会正常的起来。

    1,容器首先回去web.xml读取他的两个节点,  <listener></listener>和<context-param></context-param>。

    2, 紧接着,容器创建一个ServletContext(application),这个WEB项目所有部分都将共享这个上下文。

    3,容器以<context-param></context-param>的name作为键,value作为值,将其转化为键值对,存入ServletContext.

    4,容器创建<listener></listener>中的类实例。根据配置的listener-class来创建监听,在监听中会有contextInitialized(ServletContextEvent args)初始化方法,启动Web应用时,系统调用Listener的该方法,在这个方法中获得:ServletContext application =ServletContextEvent.getServletContext();   context-param的值= application.getInitParameter("context-param的键");得到这个值就可以做一些操作。

      举例:你想在项目启动之前就启动数据库,可以在<context-param>里设置一些键值,比如url,username,password等,在监听器类的初始化中建立数据库的连接。

    5,实例化过滤器类

    总结:<context-param>-> <listener> -> <filter> -> <servlet>

    二,spring配置文件。

      1,必须需要<listener>,而<context-param>可有可无,如果在web.xml中不写<context-param>配置信息,默认的路径是/WEB-INF/applicationContext.xml,在WEB-INF目录下创建的xml文件的名称必须是applicationContext.xml。如果是要自定义文件名可以在web.xml里加入contextConfigLocation这个context参数:在<param-value>里指定相应的xml文件名,如果有多个xml文件,可以写在一起并以“,”号分隔,比如在business-client工程中,我们采用了自定义配置方式,<context-param>配置如下:

      必须需要<listener>,而<context-param>可有可无,如果在web.xml中不写<context-param>配置信息,默认的路径是/WEB-INF/applicationContext.xml,在WEB-INF目录下创建的xml文件的名称必须是applicationContext.xml。如果是要自定义文件名可以在web.xml里加入contextConfigLocation这个context参数:在<param-value>里指定相应的xml文件名,如果有多个xml文件,可以写在一起并以“,”号分隔,比如在business-client工程中,我们采用了自定义配置方式,<context-param>配置如下:

      

    <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext-*.xml
    </param-value>

      2,

     

  • 相关阅读:
    leetcode 850. Rectangle Area II
    leetcode 699. Falling Squares 线段树的实现
    leetcode 847. Shortest Path Visiting All Nodes 无向连通图遍历最短路径
    leetcode 843. Guess the Word
    javaMail实现收发邮件(三)
    javaMail实现收发邮件(二)
    javaMail实现收发邮件(一)
    springboot整合websocket实现一对一消息推送和广播消息推送
    jieba分词/jieba-analysis(java版)
    java实现两个不同list对象合并后并排序
  • 原文地址:https://www.cnblogs.com/slhzxm16/p/7479581.html
Copyright © 2011-2022 走看看