spring使用static代码块获取配置文件属性字段

无情 阅读:1058 2021-04-01 11:09:18 评论:0

@Value("${hkws.host}")
private String host;
在静态方法或静态代码块中用到host变量为null所以有如下:
1.首先创建文件
在这里插入图片描述
2.创建文件db.properties

#hkws\u89C6\u9891 
hkws.host=192.168.3.102:6120 
hkws.appKey=25717214 
hkws.appSecret=HaiKDVNh0P4tuLW0yBZ1 

3.上代码
注:ArtemisConfig类是海康威视openAPI的

static { 
		Properties pro = new Properties(); 
		InputStreamReader in = null; 
		try { 
			in = new InputStreamReader(Config.class.getResourceAsStream("/db.properties"), "utf-8"); 
			pro.load(in); 
			ArtemisConfig.host = pro.getProperty("hkws.host");// 代理API网关nginx服务器ip端口 
			ArtemisConfig.appKey = pro.getProperty("hkws.appKey");// 秘钥appkey 
			ArtemisConfig.appSecret = pro.getProperty("hkws.appSecret");// 秘钥appSecret 
		} catch (FileNotFoundException e) { 
			log.error("找不到配置文件"); 
			e.printStackTrace(); 
		} catch (IOException e) { 
			e.printStackTrace(); 
		} finally { 
			if (in != null) { 
				try { 
					in.close(); 
				} catch (IOException e) { 
					e.printStackTrace(); 
				} 
			} 
		} 
	} 
标签:Spring
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号