• Java读取property配置文件


    读取配置文件已经成了Java程序员工作的一项必备技能。
    配置文件的优点:

    可维护性好

    怎么个可维护性好呢?

    1. 它会让程序中变化的地方很灵活的配置,不需要修改代码。
    2. Java程序部署到服务器上去之后就变成了class文件,修改困难,通过配置文件我们就可以灵活地改变程序中需要变化的地方。比如说写一个发送邮件的程序,就可以将收件人写在配置文件中,不必每次编译代码。
    3. 假如过了很久,项目经理觉得有些地方需要改,以发邮件为例,现在需要给大boss也发邮件,而自己手头又没有代码,通过配置文件只需要修改配置文件即可。

    废话不多说,直接进入主题,如何通过Java读取配置文件,其实很简单。

    配置文件

     代码如下

    复制代码
    package com.myutils.prop;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.Properties;
    
    public class PropertiesUtil {
    
        private static Properties _prop = new Properties();
    
        /**
         * 读取配置文件
         * @param fileName
         */
        public static void readProperties(String fileName){
            try {
                InputStream in = PropertiesUtil.class.getResourceAsStream("/"+fileName);
                BufferedReader bf = new BufferedReader(new InputStreamReader(in));
                _prop.load(bf);
            }catch (IOException e){
                e.printStackTrace();
            }
        }
    
        /**
         * 根据key读取对应的value
         * @param key
         * @return
         */
        public static String getProperty(String key){
            return _prop.getProperty(key);
        }
    }
    复制代码

    测试

    复制代码
    package com.myutils.prop;
    
    import org.junit.Test;
    
    /**
     * Created by GWCheng on 2015/12/29.
     */
    public class PropertiesUtilTest{
    
        @Test
        public void testReadProp() {
            PropertiesUtil.readProperties("test.properties");
            System.out.println(PropertiesUtil.getProperty("name"));
            System.out.println(PropertiesUtil.getProperty("pwd"));
        }
    }
    复制代码

    为什么没有设置值的方法呢?

    因为配置文件一般都是只读的,需要设置的话,已经部署到服务器上去了,停掉服务,然后修改配置文件,就可以了。

    读取配置文件的工具类先写到这里。

    参考文献

    1. Java读取properties文件中文乱码问题解决    http://bu-choreography.iteye.com/blog/1136047
    好记性不如烂键盘
  • 相关阅读:
    自己动手制作symbian签名
    中移动陈大庆:中国移动JAVA4.1规范和SDK工具
    角色扮演游戏引擎的设计原理
    小团队开发J2ME游戏的阶段划分
    角色扮演游戏中敌人AI(人工智能)的设计方法
    入门:Android 文档的阅读顺序
    2016 MultiUniversity Training Contest 1
    真我
    DBA是我的梦想
    解决VS2010自带的C/C++编译器CL找不到mspdb100.dll的问题
  • 原文地址:https://www.cnblogs.com/telwanggs/p/6928705.html
Copyright © 2020-2023  润新知