maven java文件路径_普通java项目、maven项目读取文件的路径问题

普通的java项目路径:

案例1:创建的一个resourcefloder文件夹config

13942c4c2d262c3ea8a85a6b786a8611.png1528144

类加载器:只要是在src目录下的文件都可以加载到,也就是加载类路径下的文件(bin目录),getClassLoader().getResourceAsStream。

mybatis的resource也是加载类路径下的文件,前提需要导入mabatis的jar包。

由于创建的一个resourcefloder文件夹config,所以对应的文件路径:

214ed1e20efaac2bdc430513dd6eb2da.png

d28541303e708594def4f10dd4966e5b.png

15281441528144

获取文件的方式:

InputStream inputStream  = new FileInputStream("config/sqlMapConfig.xml");

或者

InputStream inputStream  =Resources.getResourceAsStream("sqlMapConfig.xml");

或者

InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("sqlMapConfig.xml");

案例2:创建的一个floder文件夹file1528144

对应的文件目录:

43427d4b83dfd994efeb55c1e6499254.png

6aac1cfbaba0a4987110b5fc60c989a7.png1528144

获取文件的方式:

InputStream inputStream  = new FileInputStream("file/sqlMapConfig.xml");

类加载器只能加载类路径下的文件,所以这里不能用类加载器加载

maven项目:

mybatis的resource.getResourceAsStream("路径+文件");

getResourceAsStream获取的路径是类加载路劲,

所以如果是maven项目,加载路径就是target/class,和target/test-class.

130c331b4e9819c7187d8b3cbfd85684.png1528144

案例1:maven项目获取图中的xml文件

fc92fabf58e8a874e98b70f1e8e1ff7d.png1528144

首先文件在src/main/java/..下面,所以测试类mybatisTest执行的时候,类加载路径target/class,

f02eae3f266f1bdcd3507d6c69634214.png1528144

所以获取xml代码就是:

InputStream inputStream = new FileInputStream("src/main/java/test/sqlMapConfig.xml");

或者

InputStream inputStream = Resources.getResourceAsStream("test/sqlMapConfig.xml");

案例2:如果xml直接在src/main/resources下面1528144

对应文件位置:

cbeed7d80f894d39ad3c5a6f1d23982a.png1528144

获取代码就是:

InputStream inputStream = new FileInputStream("src/main/resources/sqlMapConfig2.xml");

或者磁盘绝对路径:

InputStream inputStream = new FileInputStream("D:/bos2.0/mybatis-    demo1/target/classes/sqlMapConfig2.xml");

或者

InputStream inputStream = Resources.getResourceAsStream("sqlMapConfig2.xml");

xml文件放在  src/test/java、   src/test/resources和上面类似

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值