码迷,mamicode.com
首页 > 编程语言 > 详细

Spring将classpath下的 .properties文件数据读出放到map中,在初始化时加载

时间:2017-05-19 15:13:51      阅读:594      评论:0      收藏:0      [点我收藏+]

标签:键值   vol   ring   style   map   value   cat   配置文件   string   

因为项目需要需要将配置文件中的键值对读出放到map中

格式为:

001=123456789

Appcontext.xml中添加配置:

<bean id="loadKeyFromProperties" class="com.;landau.init.LoadKeyFormProperties">
        <property name="keyFileResource">
            <value>classpath:keys.properties</value>
        </property>
    </bean>

java代码:

public class LoadKeyFormProperties implements InitializingBean {

    private Resource keyFileResource;

    private static Map<String, String> map = new HashMap<String, String>();

    protected static volatile boolean initialized = false;

    public static Map<String, String> getKey() {
        return map;
    }

    public void setKeyFileResource(Resource keyFileResource) {
        this.keyFileResource = keyFileResource;
    }

    /**
     * 将键值对取到集合内
     */
    private void loadKeyFormProperties() {
        if (initialized) {
            return;
        }
        InputStream is = null;
        try {
            is = keyFileResource.getInputStream();
            BufferedReader br = new BufferedReader(new InputStreamReader(is));
            String str = null;
            while ((str = br.readLine()) != null) {
                String[] data = str.split("=");
                map.put(data[0], data[1]);
            }
            initialized = true;
        } catch (Exception e) {

        } finally {
           is.close();
        }

    }

    @Override
    public void afterPropertiesSet() throws Exception {
        loadKeyFormProperties();
    }

}

 

Spring将classpath下的 .properties文件数据读出放到map中,在初始化时加载

标签:键值   vol   ring   style   map   value   cat   配置文件   string   

原文地址:http://www.cnblogs.com/landauni/p/6878410.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!