classpath到底是什么?

classes这个文件夹,它就是我们要找的classpath。

在第1个例子里,classpath:entry/dev/spring-mvc.xml 中,classpath就是指WEB-INF/classes/这个目录的路径。需要声明的一点是,使用classpath:这种前缀,就只能代表一个文件

在第2个例子里,classpath*:**/mapper/mapping/*Mapper.xml,使用classpath*:这种前缀,则可以代表多个匹配的文件**/mapper/mapping/*Mapper.xml,双星号**表示在任意目录下,也就是说在WEB-INF/classes/下任意层的目录,只要符合后面的文件路径,都会被作为资源文件找到。

  1. classpath* 它会搜索所有的 classpath,找到所有符合条件的文件,包括当前项目依赖的jar文件中的配置文件。而classpath不会到当前项目依赖的jar文件中去寻找。
  2. classpath* 存在可移植性问题,遇到问题时,应该使用classpath。
  3. 一般情况下我们根本没有必要去使用classpath*,直接使用classpath就好了。

猜你喜欢

转载自www.cnblogs.com/TheQi/p/10728992.html