在项目中,需要将所有的ip配置在properties文件中,以便维护。在本地开发时用jetty,这个路径是可以访问的。整个过程没有问题。
public static String getIp(String keyInfo){
Properties p = new Properties();
InputStream in = new BufferedInputStream(
new FileInputStream("src/main/resources/ipInfo.properties"));//在properties文件中获取ip信息
p.load(in);
return p.getProperty(keyInfo);//获取对应的ip信息
}
但是,当项目部署到开发环境时,服务器是weblogic,该路径访问不到,有notFoundException异常。因为这时候的目录是weblogic的domain目录,而不是真正的项目文件目录。
可以用下面的方法得到正确的目录。线程可以获取实际路径,之后文件就可以找到。
public static String getIp(String keyInfo){
Properties p = new Properties();
ClassLoader loader = Thread.currentThread().getContextClassLoader();
InputStream in = loader.getResourceAsStream("ipInfo.properties");//在properties文件中获取ip信息
p.load(in);
return p.getProperty(keyInfo);//获取对应的ip信息
}