赞
踩
package com; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import java.util.List; /** * 配置文件参数读取 */ @Component public class YmlConfigBean { public static String GENERATE_CONFIG_BASE; public static String GENERATE_FILE_PATH; public static List<String> GENERATE_PARAM_NAME; @Value("${generate.config.base}") private void setGenerateConfigBase(String key) { GENERATE_CONFIG_BASE = key; } @Value("${generate.file.path}") private void setGenerateFilePath(String key) { GENERATE_FILE_PATH = key; } @Value("#{'${generate.param.name}'.split(',')}") private void setGenerateParamName(List<String> key) { GENERATE_PARAM_NAME = key; } }
YmlConfigBean仍然保留,只不过不使用Value注解
package com; import org.springframework.stereotype.Component; import java.util.List; /** * 配置文件参数读取 */ @Component public class YmlConfigBean { public static volatile String GENERATE_CONFIG_BASE; public static volatile String GENERATE_FILE_PATH; public static volatile List<String> GENERATE_PARAM_NAME; }
新建一个set方法
package com; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import java.util.List; /** * 配置文件参数读取 */ @Component public class YmlConfigBeanSet { @Value("${generate.config.base}") private void setGenerateConfigBase(String key) { GENERATE_CONFIG_BASE = key; } @Value("${generate.file.path}") private void setGenerateFilePath(String key) { GENERATE_FILE_PATH = key; } @Value("#{'${generate.param.name}'.split(',')}") private void setGenerateParamName(List<String> key) { GENERATE_PARAM_NAME = key; } }
采用上述方式修改,原使用Bean的方法不需任何改动,可以通过代码扫描。
添加@Component注解,将类YmlConfigBean.java交给Spring管理,
这样便可以将YmlConfigBean中的静态常量作为系统全局常量使用.
OK,整理到这吧!
如有不正确之处,还望指正!书写不易,觉得有帮助就点个赞吧!☺☺☺
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。