java properties 赋值_自动将properties属性赋值到类中的静态变量

最近写了一个开源github项目,是一个纯Java项目,用来检测指定的一个服务器是否正常运行可访问。如果发生异常可以发送邮件,并可能的话可以尝试重启tomcat服务器。如果您感兴趣可以访问 serverfly 谢谢大家,安利完毕

现在开始正式介绍本文章,因为写这个自动反序列化properteis工具也是因为上面这个项目我才编写了这个工具类。可能这个项目里面也就这个工具类写的最多吧。

例如:config.properties中:

key1=123

key2=中文

key3=false

Const.java:

public static int key1;

public static String key2;

public static boolean key3;

使用工具类:

PropertiesAutoSerialize.init("/config.properties",Const.class);

看上去使用方式好像很简单,其实是真的很简单!这是真的!

实现原理

从properties文件中获取所有的key

遍历这些key去找类中的同名静态字段

字段仅支持boolean,byte,char,short,int,long,float,double,String

properties需要使用UTF-8编码,否则中文乱码

献上工具类代码:PropertiesAutoSerialize.java

package com.againfly.util;

import java.io.*;

import java.lang.reflect.Field;

import java.lang.reflect.Modifier;

import java.util.Iterator;

import java.util.Properties;

/**

* Created by wangankang on 16/8/28.

* 该类用于将Properties文件中的参数,自动的设置到类同名字段中,前提是字段为静态的.

*/

public class PropertiesAutoSerialize implements Serializable {

/**

* 待反序列化的类

*/

private Class clazz;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值