如图:
Map的顺序并没有按我配置文件的顺序注入(尽管Spring是用的LinkedHashMap)
似乎早在一年前1.2.2版本之后的版本修复了:https://github.com/spring-projects/spring-boot/issues/2487
但为什么1.3.0还是出现这样的问题?是使用姿势不对?求解。
找到了问题原因:
Properties本身就是不保证顺序的,在PropertiesPropertySourceLoader
类中load
方法中断点即可确认。
解决办法:
使用.yml
(或.yaml
)配置文件即可。(已验证)YamlPropertySourceLoader
类中load
方法,跟到process
方法中,可以看到使用了LinkedHashMap
。