有的属性在properties中的值为中文,使用spring的@Value标签读出来的值缺是乱码。
首先要确认一点的是,properties中要使用unicode编码而不是中文。
使用J IDEA的话,直接搜索file encoding设置如下配置即可,
以上基本可以确保读出来的不是乱码。
但是,我们发现properties中配置了unicode后,读出来的依然是乱码。
后来发现是pom的resource插件导致的,插件要把不同环境的properties读取到一个properties中,
这个过程中把unicode转换成汉字了,而我们需要最后的properties中仍然显示的是unicode。
解决方案就是把unicode再加一个反斜线,比如:
test=\u53D1\u53D1\u53D1
改成
test = \\u53D1\\u53D1\\u53D1
即可解决。