用spring的Resource读取配置文件时有两种方式:
1.用getFile()方法。
2.用getInputStream()方法。
在项目开发时,我们的配置文件一般是放到指定文件夹下的,所以用getFile()方法不会出现问题,但是打包时,文件会被打包到jar中,这时候getFile()就会找不到指定的文件,就会报FileNotFoundException的错误,所以为了防止这种错误的发生,我们最好将getFile()方法改成getInputStream()方法。
如:
错误的读取方式:
(new DefaultResourceLoader()).getResource("classpath:conf/sys.properties").getFile();
正确的读取方式:
(new DefaultResourceLoader()).getResource("classpat:conf/sys.properties").getInputStream();