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

maven工程仿springboot手写代码区分开发测试生产

时间:2019-06-15 15:19:06      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:package   port   imp   maven工程   读取   elements   als   map   Fix   

技术图片

读取代码:

package com.jz.compute.mc.v2.config;

import java.util.Enumeration;
import java.util.ResourceBundle;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;

public class PropertiesConfig {

    public static volatile ConcurrentMap<String, String> applicationMap = new ConcurrentHashMap<>();
    private final static String dev = "dev";
    private final static String test = "test";
    private final static String prod = "prod";

    private PropertiesConfig() {
    }

    public static ConcurrentMap<String, String> getInstance() {
        return getInstance("application-");

    }

    public static ConcurrentMap<String, String> getInstance(String filePrefix) {
        if (applicationMap.size() == 0) {
            synchronized (PropertiesConfig.class) {
                if (applicationMap.size() == 0) {
                    ResourceBundle application = ResourceBundle.getBundle("application");
                    ResourceBundle applicationActive = null;
                    String profilesActive = application.containsKey("profiles.active")
                            ? application.getString("profiles.active") : "";
                    if (PropertiesConfig.prod.equals(profilesActive)) {
                        applicationActive = ResourceBundle.getBundle(filePrefix + "prod");
                    } else if (PropertiesConfig.test.equals(profilesActive)) {
                        applicationActive = ResourceBundle.getBundle(filePrefix + "test");
                    } else if (PropertiesConfig.dev.equals(profilesActive)) {
                        applicationActive = ResourceBundle.getBundle(filePrefix + "dev");
                    } else {
                    }

                    Enumeration<String> keys = application.getKeys();
                    while (keys.hasMoreElements()) {
                        String key = keys.nextElement();
                        applicationMap.put(key, application.getString(key));
                    }
                    if (null != applicationActive) {
                        keys = applicationActive.getKeys();
                        while (keys.hasMoreElements()) {
                            String key = keys.nextElement();
                            applicationMap.put(key, applicationActive.getString(key));
                        }
                    }
                }
            }
        }
        return applicationMap;
    }

    public static void main(String[] args) {
        System.out.println(PropertiesConfig.getInstance().getOrDefault("eicost.url", ""));
    }

}

 

maven工程仿springboot手写代码区分开发测试生产

标签:package   port   imp   maven工程   读取   elements   als   map   Fix   

原文地址:https://www.cnblogs.com/carlo/p/11027530.html

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