zoukankan      html  css  js  c++  java
  • Java读取property配置文件

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

    可维护性好

    怎么个可维护性好呢?

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

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

    配置文件

    name=刘德华
    pwd=123456
    

     代码如下

    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
  • 相关阅读:
    KVM -> 热迁移_05
    KVM -> 虚拟机磁盘管理_03
    使用光盘搭建本地yum源
    KVM -> 虚拟机管理&console登录_02
    使用windows-SQLyog连接linux-mysql
    linux下登陆mysql失败
    忘记root密码时如何重设密码
    批处理程序:自动登陆服务端,并循环执行某些命令
    linux--磁盘分区
    linux--档案与目录管理
  • 原文地址:https://www.cnblogs.com/yangyi9343/p/5846236.html
Copyright © 2011-2022 走看看