需要用nacos往bean里面注入一个map对象。如果直接用nacos的话,需要新开一个****.json的配置文件,个人觉得太麻烦。结合Spring EL表达式的功能,简单的实现了这个功能。
java代码
@Value("#{T(com.alibaba.fastjson.JSON).parseObject(${tyc.appid.token.map}, T(java.util.Map))}")
private Map<String, String> tokenMap;
nacos配置
tyc.appid.token.map='{"shuffle":"token1", "msign":"token2"}'
Spring EL 语法说明
- T操作符可以被用来指定安装一个java.lang.ClassClass (the type). 静态方法也可以使用该运算符调用
- xml或者注解里的表达式格式: #{<表达式字符串>}
- ${placeholder} 表示占位符