Java工程中读取resources目录下properties文件的方式,从上图可知,当工程部署在服务器下时,配置文件以及代码都是在对应的classes文件夹下
二、具体读取方法
1、当需要读取当前路径下的properties文件时,即在本地没有部署到具体服务器上的情况:
File file = new File(“src/main/resources/test.properties”);
InputStream in = new FileInputStream(file);
2、当工程以war或者jar的形式部署到服务器后,在需要读取对
应properties文件情况下,此时应该采取相对路径的读取方法。以下为采用流的方式进行读取。
从上图可知,当工程部署在服务器下时,配置文件以及代码都是在对应的classes文件夹下
InputStream in = this.getClass().getResourceAsStream(“/test.properties”);
Properties props = new Properties();
InputStreamReader inputStreamReader = new InputStreamReader(in, “UTF-8”);
props.load(inputStreamReader);
采用此种流的方式进行读取后,通过props.getProperty(key)的方式获取配置文件中key所对应的value的值。
3、我们也可以采用注解的方式进行配置文件读取,在springboot工程中不需要在spring配置文件中做相应的配置,可以直接使用该注解获取配置文件中key值对应的value值。
@Value(“${local.server.port}”)// 注入端口号
private int port;
注意:当value出现中文时,会出现注入的值为乱码的现象。原因是在SpringBoot自动加载application.properties时默认采用unicode编码方式。解决办法如下所示:
@RestController
@RequestMapping(value = “/redis”)
原文链接:https://blog.csdn.net/2401_84690353/article/details/139154880 标签:Java,读取,配置文件,工程,classes,服务器,properties,resources From: https://www.cnblogs.com/sunny3158/p/18289934