java项目中的classpath路径

java项目中的classpath路径

java项目中的到底是什么

mybatis:
  mapper-locations:
    - classpath*:/mapper/**/*.xml
  config-location: classpath:mybatis-config.xml

在java项目中,你一定碰到过,通常情况下,我们是用它来指定配置/资源文件的路径。在刚开始学习的时候,自己也糊里糊涂,但是现在,是时候弄清楚它到底是指什么了。

顾名思义,就是class的path,也就是类文件(*.class的路径)。一谈到文件的路径,我们就很有必要了解一个java项目(通常也是web项目)它在真正运行时候,这个项目内部的目录、文件的结构;这样,我们才好分析、理解。

开发时期的web项目结构

java classpath 路径

下面java classpath 路径,我以一个ssm的项目为例,我先把开发时候的项目的目录结构图放出来。根据maven的约定,一般我们的项目结构就像下面这样。

java classpath 路径

用在哪里了?

而我们经常用到的地方,就是在指定一些配置/资源文件的时候会使用到。比如说,我们在web.xml中指定的配置文件java classpath 路径,如下图java项目中的classpath路径,我们使用::entry/dev/-mvc.xml;再比如,当我们把*.xml文件放在了main/java/..//文件夹下时,在的配置文件中配置其位置,我们使用:

classpath*:**/mapper/mapping/*Mapper.xml

java classpath 路径

java classpath 路径

很显然,上面这2个的配置,是为了告诉配置文件,去哪里寻找我们要指定的配置文件。要想弄清楚为什么是上面这样写的,我们就要来看看项目运行时(或者是发布后)的目录结构了。

web项目发布后的目录结构

我们使用IDEA对项目进行打包java classpath 路径java项目中的classpath路径,一种是war包,一种是的文件夹,war包解压后就是了。我们来对解压后的目录结构进行分析。

java classpath 路径

java classpath 路径

经过对比,我们要注意到,开发时期的项目里,src/main/下面的java和文件夹都被(编译)打包到了生产包的WEB-INF//目录下;而原来WEB-INF下面的views和web.xml则仍然还是在WEB-INF下面。同时由maven引入的依赖都被放入到了WEB-INF/lib/下面。最后,编译后的class文件和资源文件都放在了目录下。

java classpath 路径

在编译打包后的项目中,根目录是META-INF和WEB-INF 。文件夹就是我们要找的。

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

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

原文:

公告:
1. 本站所有资源来源于用户上传和网络,如有侵权请联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长处理!
6. 本站不售卖代码,资源标价只是站长收集整理的辛苦费!如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
7. 站长QQ号码 2205675299

资源库 - 资源分享下载网 » java项目中的classpath路径

常见问题FAQ

关于资源售价和售后服务的说明?
本站所有资源的标价均为本站收集资源的辛苦费,不代表资源本身的价值。软件是高智慧高价值的商品,不可能是白菜价。本站资源标价只是赞助费用,收取的赞助费仅用来维持本站的日常运营!毕竟收集整理资料需要投入云计算资源和站长大量的精力。
代码有没有售后服务和技术支持?
由于代码的运行具有不可预见性,本站不保证代码完整可运行,不提供技术支持和售后服务。 本站原创代码都是站长自己开发的,可以有偿提供技术支持服务。 网站里标明【亲测】的代码都是站长亲测过的,其他的代码由于精力有限,没有一一测试,不能保证代码就一定能够使用,更没有技术支持服务,下载前请自行斟酌。
有没有搭建服务?
由于搭建服务比较费时费力,所以本站除了原创代码外均不提供搭建服务。本站分享代码纯属兴趣爱好,不以盈利为目的,请勿咨询有没有搭建服务,谢谢理解。
链接地址失效了怎么办?
请带上资源链接地址联系客服,工作时间内我们看到后将第一时间回复。
关于解压密码
本站资源一般都没有加密,如果发现需要解压密码的,那么就输入 hao.35dc.com 试试。

发表评论

资源库,由老程序员细心甄别、精心筛选,只为提供优质的源码资源

关于我们 联系我们