• spring整合web项目


     Web项目如何初始化SpringIOC容器 :思路:当服务启动时(tomcat),通过监听器将SpringIOC容器初始化一次(该监听器 spring-web.jar已经提供),web项目启动时 ,会自动加载web.xml,因此需要在web.xml中加载 监听器(ioc容器初始化)。所谓的ioc容器其实相当于applicationContext.xml配置文件,把所有被ioc管理的对象放入其中,放入bean标签里,当做对象管理!!!

    <!-- 指定 Ioc容器(就是applicationContext.xml)的位置-->
      <context-param>
              <!--  监听器的父类ContextLoader中有一个属性contextConfigLocation,该属性值 保存着 容器配置文件applicationContext.xml的位置 -->
              <param-name>contextConfigLocation</param-name>
              <param-value>classpath:applicationContext.xml</param-value>
      </context-param>  
      <listener>
          <!-- 配置spring-web.jar提供的监听器,此监听器 可以在服务器启动时 初始化Ioc容器。
              初始化Ioc容器(applicationContext.xml) ,
                  1.告诉监听器 此容器的位置:context-param
                  2.默认约定的位置    :WEB-INF/applicationContext.xml
           -->
          <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
      </listener>

    实例:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://java.sun.com/xml/ns/javaee"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
        version="3.0">
        <display-name>crm-test</display-name>
        <welcome-file-list>
            <welcome-file>index.html</welcome-file>
            <welcome-file>index.htm</welcome-file>
            <welcome-file>index.jsp</welcome-file>
            <welcome-file>default.html</welcome-file>
            <welcome-file>default.htm</welcome-file>
            <welcome-file>default.jsp</welcome-file>
        </welcome-file-list>
    
        <!-- 配置spring读取的配置文件 -->
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>
                classpath:spring_dao.xml
                classpath:spring_service.xml
        </param-value>
        </context-param>
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
    
        <!-- 配置编码过滤 -->
        <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>
            <init-param>
                <param-name>forceEncoding</param-name>
                <param-value>true</param-value>
            </init-param>
        </filter>
        <filter-mapping>
            <filter-name>CharacterEncodingFilter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
    
        <!-- 配置前端控制器 -->
        <servlet>
            <servlet-name>SpringMVC</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:spring-web-mvc.xml</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>SpringMVC</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
        
        <!--  jfree配置  -->
        <servlet>
            <servlet-name>DisplayChart</servlet-name>
            <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class>
        </servlet>
    
        <servlet-mapping>
            <servlet-name>DisplayChart</servlet-name>
            <url-pattern>/chart</url-pattern>
        </servlet-mapping> 
        
    </web-app>
  • 相关阅读:
    对 HTML 语义化的理解
    cookies,sessionStorage 和 localStorage 的区别
    display:none和visibility:hidden两者的区别
    页面导入样式时,使用link和@import有什么区别
    ES6之let和const
    v-if和v-show 的区别
    解决:Sass Loader has been initialised using an options object that does not ma tch the API schema.
    [转]javaweb学习总结(十四)——JSP原理
    [转]JavaWeb学习总结(十三)——使用Session防止表单重复提交
    [转]JavaWeb学习总结(十二)——Session
  • 原文地址:https://www.cnblogs.com/wskb/p/11507620.html
Copyright © 2020-2023  润新知