zoukankan      html  css  js  c++  java
  • web.xml 配置中classpath: 与classpath*:的区别——(十一)

    首先 classpath是指 WEB-INF文件夹下的classes目录

    解释classes含义:
    1.存放各种资源配置文件 eg.init.properties log4j.properties struts.xml
    2.存放模板文件 eg.actionerror.ftl
    3.存放class文件 对应的是项目开发时的src目录编译文件
    总结:这是一个定位资源的入口

    classpath 和 classpath* 区别:
    classpath:只会到你的class路径中查找找文件;
    classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找.


    classpath*的使用:当项目中有多个classpath路径,并同时加载多个classpath路径下(此种情况多数不会遇到)的文件,*就发挥了作用,如果不加*,则表示仅仅加载第一个classpath路径

    另外:
    "**/" 表示的是任意目录;
    "**/applicationContext-*.xml"  表示任意目录下的以"applicationContext-"开头的XML文件。 
    程序部署到tomcat后,src目录下的配置文件会和class文件一样,自动copy到应用的 WEB-INF/classes目录下

    classpath:与classpath*:的区别在于:

    前者只会从第一个classpath中加载,而
    后者会从所有的classpath中加载 

    如果要加载的资源,
    不在当前ClassLoader的路径里,那么用classpath:前缀是找不到的,
    这种情况下就需要使用classpath*:前缀

    在多个classpath中存在同名资源,都需要加载,
    那么用classpath:只会加载第一个,这种情况下也需要用classpath*:前缀

    注意:
    用classpath*:需要遍历所有的classpath,所以加载速度是很慢的,因此,在规划的时候,应该尽可能规划好资源文件所在的路径,尽量避免使用classpath*。

  • 相关阅读:
    UVA 11488 Hyper Prefix Sets (字典树)
    UVALive 3295 Counting Triangles
    POJ 2752 Seek the Name, Seek the Fame (KMP)
    UVA 11584 Partitioning by Palindromes (字符串区间dp)
    UVA 11100 The Trip, 2007 (贪心)
    JXNU暑期选拔赛
    计蒜客---N的-2进制表示
    计蒜客---线段的总长
    计蒜客---最大质因数
    JustOj 2009: P1016 (dp)
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/7286599.html
Copyright © 2011-2022 走看看