@Value读取properties中文乱码解决方案
当我们在项目中需要读取配置文件的变量时,往往会遇到读取中文乱码的问题:
英文字符则不会出现该问题。
出现该问题的原因是:
SpringBoot在加载配置文件时,使用的默认编码是:ISO_8859_1。
详细原因请参考:
https://eericzeng.github.io/2019/06/29/SpringBoot%E4%BD%BF%E7%94%A8@Value%E8%AF%BB%E5%8F%96.properties%E4%B8%AD%E6%96%87%E4%B9%B1%E7%A0%81%E5%8F%8A%E8%A7%A3%E5%86%B3%E6%96%B9%E6%B3%95/
那么我们修改IDEA的编码格式为UTF-8不就可以了吗?
这种方式似乎解决了该问题,但是又没完全解决,依然会出现乱码的问题。
那么首先我们需要遵循的原则是:在配置文件中尽量避免中文配置,
当我们不得不配置中文数据时,可以使用如下解决方案:
读取properties中的中文配置,可以使用@PropertySource
注解。
下面是demo:
首先新建配置文件:xxx.properties,名称不能和application.properties相同。
新建一个了类,用来接收配置:
@Data
@Component
@PropertySource(value = "classpath:chinese.properties", encoding="UTF-8")
//指定读取配置的前缀
@ConfigurationProperties(prefix = "com.example.demo")
public class Properties {private String name;private Integer age;private String address;
}
使用:
@Autowired
引用
这样就可以正确加载中文配置。
@ConfigurationProperties还可以加载yml配置,同样不会出现乱码问题。
如何获取yml里的配置数据?
@Value读取properties中文乱码解决方案相关推荐
- SpringBoot使用@Value读取.properties中文乱码及解决方法
问题重现 某不知名springboot小项目,application.properties文件: custom.param=中文属性值 java代码: @SpringBootApplication p ...
- PHP——PHP读取MySQL数据库中文乱码解决方案
问题描述 PHP读取MySQL数据库中文乱码 解决方案 静态页面 <head> <metahttp-equiv="Content-Type"content=&q ...
- JSP中文乱码解决方案了解和TOMCAT中文乱码解决
java 中文乱码终极解决方案 首先,确保你的数据库是支持中文的.把数据库的编码方式设置能支持中文的,如GB2132,utf-8等,而且经过测试后确实能写入中文且正常显示.这样就就保证了数据库确实是支 ...
- 解决Spring项目读取配置文件中文乱码问题
解决Spring项目读取配置文件中文乱码问题 properties配置文件读取时中文乱码,错误如下: 解决方法如下: **1.**打开IDEA的设置项,进入Editor->File encodi ...
- iis 站点中文乱码 解决方案
iis 站点中文乱码 解决方案 参考文章: (1)iis 站点中文乱码 解决方案 (2)https://www.cnblogs.com/zhaokunbokeyuan256/p/10001726.ht ...
- Spring RestTemplate中文乱码解决方案
Spring RestTemplate中文乱码解决方案 参考文章: (1)Spring RestTemplate中文乱码解决方案 (2)https://www.cnblogs.com/accesski ...
- python写入csv文件中文乱码解决方案
python写入csv文件中文乱码解决方案 参考文章: (1)python写入csv文件中文乱码解决方案 (2)https://www.cnblogs.com/vsivn/p/6115537.html ...
- Windows 10 powershell 中文乱码解决方案
Windows 10 powershell 中文乱码解决方案 参考文章: (1)Windows 10 powershell 中文乱码解决方案 (2)https://www.cnblogs.com/we ...
- Spring MVC POST中文乱码解决方案
2019独角兽企业重金招聘Python工程师标准>>> POST中文乱码解决方案 1.自己编写一个filter,来实现编码,代码如下: 1 public class Characte ...
最新文章
- 秦刚:积累财富最简单的一种模式:打造一项高收入技能
- 如何让人大致理解RxJava思想:第一节 初步理解RxJava
- php post请求后端拿不到值_[精选] uniapp实现多端开发,与PHP是如何结合的
- 3.Lucene3.x API分析,Director 索引操作目录,Document,分词器
- groupby索引有效吗_面试官:MySQL建索引需要遵循哪些原则呢?
- shell中字符串操作【转】
- 配置计算机老是重启,电脑总是自动重启该怎么解决
- 104. 字符串函数
- PE框架学习之道:PE框架——style的配置
- 关于非堆内存申请的性能测试
- php openoffice,php实现openoffice转pdf的方法
- 成都电子信息学校计算机专业,成都电子信息学校2020招生简章
- lenovo服务器换系统重装系统_电脑怎么重装系统lenovo
- 大数据分析与应用技术创新平台
- 语法错误 : 缺少“;”(在“*”的前面)_学科教学不能缺少生本意识
- vue-cli在webpack环境下怎样生成开发环境模板(适合初学者)
- 微信支付-扫码支付方式在ThinkPHP商城中的使用(第二部分)
- C++ —— 宏对于简化类接口的奇技淫巧
- html datatable修改行,DataTable根据条件修改行颜色和特定格颜色
- Matlab绘图(二)—变色散点图二维、三维绘制
热门文章
- 基于android 10的国产手机,魅友有福了,基于Android 10的Flyme来了,10款旧机型可申请...
- SpringMVC整合mybatis(终结版)
- java放大缩小_如何用Java实现图形的放大和缩小?
- 将页面全部颜色变成灰色
- Linux命令:lp
- 二零年的十一月开始 努力做个极简的人
- 新唐NUC972 ARM9 内置DDR2 最大128MB 11路UART 电表 集中器 充电桩
- PYTHON3 Modbus_tk
- 【小程序】如何实现一个可折叠的列表
- 【深入理解Kotlin协程】Google的工程师们是这样理解Flow的?