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