zoukankan      html  css  js  c++  java
  • 【ssm】ssm整合web.xml文件加载顺序

    <!-- web.xml文件加载顺序

    context-param->Listener->filter->Servlet(同类级别按照顺序执行)
    先初始化spring容器。加载applicationContext文件 初始化 service dao层
    初始化service层 加载service层中的类
    初始化dao层 加载dao层mapper中的接口
    因为dao需要连接mysql提供的数据库 所以需要加载jdbc.properties中的数据配置文件。以及logger日志文件
    创建数据库连接池。创建数据库连接池
    spring和mybatis整合获取SqlSessionFactoryBean
    此时去加载SqlMapConfig中的文件
    实用类去扫描mapper类中的接口
    通过数据源 配置事务管理器 配置事务注解以及切面和通知
    以上就是spring容器需要加载的文件

    Listener加载

    Filter加载 跨域请求 Post请求

    最后是前端控制器DispatcherServlet加载springMvc中的配置文件
     

    <!-- 初始化spring容器 -->
    <!-- 跨域请求 -->
    <filter>
    <filter-name>SimpleCORSFilter</filter-name>
    <filter-class>hbsi.yfzx.filter.SimpleCORSFilter</filter-class>
    <init-param>
    <param-name>IsCross</param-name>
    <param-value>true</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>SimpleCORSFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    
    
    <!-- 解决post乱码 -->
    <filter>
    <filter-name>CharacterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>utf-8</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>CharacterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <!-- springmvc的前端控制器 -->
    <servlet>
    <servlet-name>Info</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!-- contextConfigLocation不是必须的, 如果不配置contextConfigLocation, springmvc的配置文件默认在:WEB-INF/servlet的name+"-servlet.xml" -->
    <init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:spring/springmvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>Info</servlet-name>
    <url-pattern>/</url-pattern>
    </servlet-mapping>
  • 相关阅读:
    Effective Java 19 Use interfaces only to define types
    Effective Java 18 Prefer interfaces to abstract classes
    Effective Java 17 Design and document for inheritance or else prohibit it
    Effective Java 16 Favor composition over inheritance
    Effective Java 15 Minimize mutability
    Effective Java 14 In public classes, use accessor methods, not public fields
    Effective Java 13 Minimize the accessibility of classes and members
    Effective Java 12 Consider implementing Comparable
    sencha touch SortableList 的使用
    sencha touch dataview 中添加 button 等复杂布局并添加监听事件
  • 原文地址:https://www.cnblogs.com/qxlxi/p/12860954.html
Copyright © 2011-2022 走看看