Java读取配置文件

来源:互联网 发布:化工工艺流程设计软件 编辑:程序博客网 时间:2024/04/29 21:48

利用Java读取配置文件一般分两种方法,分别是静态读取和动态读取。

  • 静态读取:在初始化的时候就把配置项一次全部读入,并保存在静态成员变量中
  • 动态读取:每次加载的时候读取一遍

先介绍一个静态的读取方法,读取文件src文件下的Config.propertise配置文件,直接看代码:

package common.util;import java.util.ResourceBundle;/** * 用于读取配置参数 */public class Config {    private static final ResourceBundle resourceBundle = ResourceBundle.getBundle("Config");    public static String get(String key) {        return resourceBundle.getString(key);    }    /**     * 获取互联网网关IP     *      * @return     */    public static String getIp() {        return Config.get("Ip");    }    /**     * 获取互联网网关端口号     *      * @return     */    public static int getPort() {        return Integer.parseInt(Config.get("Port"));    }    /**     * 获取互联网编号     *      * @return     */    public static String getId() {        return Config.get("Id");    }    /**     * 获取sharedSecret     *      * @return     */    public static String getSpSharedSecret() {        return Config.get("sharedSecret");    }    /**     * 获取链接的次数     *      * @return     */    public static int getConnectCount() {        return Integer.parseInt(Config.get("connectCount"));    }    /**     * 获取链接的超时时间     *      * @return     */    public static int getTimeOut() {        return Integer.parseInt(Config.get("timeOut"));    }}

接下来介绍一些动态的读取配置文件的方法,同样的,读取文件src文件下的Config.propertise配置文件,直接看代码吧:

package common.util;import java.util.HashMap;import java.util.Map;import java.util.Properties;import org.springframework.core.io.ClassPathResource;import org.springframework.core.io.Resource;import org.springframework.core.io.support.PropertiesLoaderUtils;public class ExcutePro {    // 读取.properties 结尾的配置文件用,getP, getParam    public static Map<String, String> getP(String path) throws Exception {        Resource resource = new ClassPathResource(path);        Properties props = PropertiesLoaderUtils.loadProperties(resource);        Map<String, String> param = new HashMap<String, String>((Map) props);        return param;    }}

使用方法:

public static void main(String[] args) {        Map<String, String> app = null;        try {            app = ExcutePro.getP("Config.properties");        } catch (Exception e2) {            e2.printStackTrace();        }        String msgSic_port = app.get("Ip");        String msgSic_port = app.get("Port");        String msgSic_ip = app.get("sharedSecret");        String msgSic_port = app.get("connectCount");        String msgSic_port = app.get("timeOut");        System.out.println(Ip);        System.out.println(Port);        System.out.println(sharedSecret);        System.out.println(connectCount);        System.out.println(timeOut);    }
0 0
原创粉丝点击