zoukankan      html  css  js  c++  java
  • spring mvc改动配置文件路径

    1.1.  Classpath

    project文件夹


    在web.xml文件例如以下配置:

         <!-- 配置spring mvc 的核心servlet -->

         <servlet>

             <servlet-name>spring</servlet-name>

             <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

             <init-param>

                  <param-name>contextConfigLocation</param-name>

                  <!-- 指定spring mvc 配置文件的路径 默觉得 /WEB-INF/<[servlet-name]-servlet.xml> 比如此处为/WEB-INF/spring-servlet.xml

                       以下配置的也就是默认值 -->

                  <param-value>classpath:config/spring-servlet.xml</param-value>

             </init-param>

             <!-- 配置随server启动自己主动初始化 -->

             <load-on-startup>1</load-on-startup>

     

         </servlet>

         <servlet-mapping>

             <servlet-name>spring</servlet-name>

             <!-- 过滤全部后缀名为.do的请求 -->

             <url-pattern>*.do</url-pattern>

         </servlet-mapping>

    1.2.  Classpath*

    project文件夹跟上面一样

    Web.xml文件里例如以下配置:

    <!-- 配置spring mvc 的核心servlet -->

         <servlet>

             <servlet-name>spring</servlet-name>

             <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

             <init-param>

                  <param-name>contextConfigLocation</param-name>

                  <!-- 指定spring mvc 配置文件的路径 默觉得 /WEB-INF/<[servlet-name]-servlet.xml> 比如此处为/WEB-INF/spring-servlet.xml

                       以下配置的也就是默认值 -->

                  <param-value>classpath*:config/spring-servlet.xml</param-value>

             </init-param>

             <!-- 配置随server启动自己主动初始化 -->

             <load-on-startup>1</load-on-startup>

     

         </servlet>

         <servlet-mapping>

             <servlet-name>spring</servlet-name>

             <!-- 过滤全部后缀名为.do的请求 -->

             <url-pattern>*.do</url-pattern>

         </servlet-mapping>

    1.3.  Classpath是什么

    设置Classpath的目的。在于告诉Java运行环境,在哪些文件夹下能够找到您所要运行的Java程序所须要的类或者包

     classpath是指 WEB-INF文件夹下的classes文件夹 。将web应用公布到server时,会将src文件夹下全部的类编译后的class文件和资源文件放入到WEB-INF文件夹下的classes文件夹。

    1.4.  Classpath和classpath*的差别

    classpath:仅仅会到你的class路径中查找找文件。

    classpath*:不仅包括class路径。还包括jar文件里(class路径)进行查找。

    1)        前者仅仅会从第一个classpath中载入,而后者会从全部的classpath中载入 。

    2)        假设要载入的资源。 不在当前ClassLoader的路径里,那么用classpath:前缀是找不到的, 这样的情况下就须要使用classpath*:前缀。

    3)        在多个classpath中存在同名资源,都须要载入, 那么用classpath:仅仅会载入第一个,这样的情况下也须要用classpath*:前缀。

    4)        用classpath*:须要遍历全部的classpath。所以载入速度是非常慢的,因此,在规划的时候,应该尽可能规划好资源文件所在的路径。尽量避免使用classpath*。

  • 相关阅读:
    websocket使用nginx作为反向代理
    curl模拟http发送get或post接口测试
    linux tail -f messages查看控制台失败
    shell中使用>/dev/null 2>&1 丢弃信息
    mysql备份与还原
    计算机中RAM和ROM
    *C语言有关指针的变量声明中的几个易错点
    五种存储变量补充~作用域和存储时期
    typedef和#define的简单比较
    fopen()函数参数
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5406755.html
Copyright © 2011-2022 走看看