SpringBoot读取properties文字乱码问题及相关问题

问题:在idea的编辑器中properties文件一般用UTF-8编码,SpringBoot2读取解码方式默认不是UTF-8,当值出现中文时SpringBoot读取时出现了乱码。

解决方式1:在SpringBoot框架层面解决,在配置类注解上添加encoding属性值为utf-8

@PropertySource(value={"classpath:httpclient/commonHttpclient.properties"},ignoreResourceNotFound = true,encoding = "UTF-8")

此时没有改变源文件。

解决方式2(不推荐):在idea编辑器层面解决问题。勾选Transparent native-to-ascii conversion

网上类似这个解决方式http://www.zslin.com/web/article/detail/47

这中方式会将源文件中的一些中文和另一些不在 ISO-8859-1编码中的字符转换为unicode码,然后idea读取时转unicode转换为中文。就是说编辑和显示时idea先转换了一次,idea编辑器中看到的其实和源文件中的数据已经不一样了。这种方式虽然不影响开发,但是改变了源文件的编码。

转换后idea编辑器显示,

转换后源文件已变

巧合的时,SpringBoot读取properties的unicode编码字符串时会自动转为中文(yml格式就不行)。所以不影响项目运行。

参考:对于IDEA中default encoding for properties file和transparent native-to-ascii conversion的理解-CSDN博客

springboot项目中如何将properties文件用utf-8格式读取 - 简书

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/211938.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux---逻辑卷管理

本章主要介绍逻辑卷的管理。 了解什么是逻辑卷创建和删除逻辑卷扩展逻辑卷缩小逻辑卷逻辑卷快照的使用 前面介绍了分区的使用,如果某个分区空间不够,想增加空间是非常困难的。所以,建议尽可能使用逻辑卷而非普通的分区,因为逻辑卷…

localhost工具:本地代码的远程之路 | 京东云技术团队

在日常的开发过程中,本地代码远程调试一直是最理想的开发状态。本文通过介绍京东集团内开发的一个轻量简单的小工具”localhost”,从多角度的方案思考,到原理介绍,到最终的方案落地,在开发阶段发现问题,解决…

【数据结构高阶】AVL树

上期博客我们讲解了set/multiset/map/multimap的使用,下面我们来深入到底层,讲解其内部结构: 目录 一、AVL树的概念 二、AVL树的实现 2.1 节点的定义 2.2 数据的插入 2.2.1 平衡因子的调整 2.2.1.1 调整平衡因子的规律 2.2.2 子树的旋…

识别低效io引起的free buffer waits

产生事发时间段的awr报告 Top 5 wait events 这里重点关注: 1.free buffer waits 2.enq_HW-contention 3.enq:tx-row lock contention enq:HW-contention属于水位线的争用,已经透过alter table allocate extent,提前分配空间,这里不做讨论 …

C++——红黑树

作者:几冬雪来 时间:2023年12月7日 内容:C——红黑树讲解 目录 前言: 红黑树的概念: 红黑树的性质: 红黑树的路径计算: 最长路径和最短路径: AVL树与红黑树的区别&#xff…

让你在组建企业级项目时手到擒来——浅谈各类常用工具和框架概述

文章目录 🔊博主介绍🥤本文内容📢文章总结📥博主目标 🔊博主介绍 🌟我是廖志伟,一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、清华大学出版社签约作…

分布式系统理论基础

目录 引言 CAP定理 CAP的工程启示 1、关于 P 的理解 2、CA非0/1的选择 3、跳出CAP 小结 本文转自:https://www.cnblogs.com/bangerlee/p/5328888.html 该系列博文会告诉你什么是分布式系统,这对后端工程师来说是很重要的一门学问,我们会逐步了…

Node.js版本管理工具NVM(Node Version Manager)的使用

nvm简介 nvm(Node Version Manager)是一个用于管理 Node.js 版本的工具。它可以让你在同一台计算机上安装并切换多个 Node.js 版本,非常方便。 如何安装 nvm 下载 nvm 安装包 访问 nvm下载地址 ,根据你的操作系统选择对应的安…

开源,可商业化!性能比Stable Difusion强2.5倍

文生图平台Playground宣布开源Playground V2版本,允许商业化,用户通过文本就能生成3D、动漫、素描、朋克、暗黑等多种类型1024x1024图片,同时提供免费在线体验。 Playground V2是基于Stable Diffusion XL开发而成,还从Midjourney…

台灯应该买什么样的才能护眼?学生护眼必备护眼台灯推荐

10月26日,教育部召开新闻发布会,介绍综合防控儿童青少年近视工作情况。全国综合防控儿童青少年近视工作联席会议机制办公室主任、教育部体育卫生与艺术教育司司长王登峰介绍,2018年全国儿童青少年的总体近视率53.6%,2019年总体近视…

1.2 C语言简介

一、为什么要讲C语言 C语言是编程界的长青藤,可以查看语言排名发现,虽然现在语言很多,但是C语言一直占有一定地址 来源网站:https://www.tiobe.com/tiobe-index/ 在系统、嵌入式、底层驱动等领域存在一定的唯一性(C语…

使用GPT-4V解决Pycharm设置问题

pycharm如何实现关联,用中文回答 在PyCharm中关联PDF文件类型,您可以按照以下步骤操作: 1. 打开PyCharm设置:点击菜单栏中的“File”(文件),然后选择“Settings”(设置)。…

【目标检测】进行实时检测计数时,在摄像头窗口显示实时计数个数

这里我是用我本地训练的基于yolov8环境的竹签计数模型,在打开摄像头窗口增加了实时计数显示的代码,可以直接运行,大家可以根据此代码进行修改,其底层原理时将检测出来的目标的个数显示了出来。 该项目链接:【目标检测…

SQL注入漏洞的检测及防御方法

SQL注入(SQL Injection)是一种广泛存在于Web应用程序中的严重安全漏洞,它允许攻击者在不得到授权的情况下访问、修改或删除数据库中的数据。这是一种常见的攻击方式,因此数据库开发者、Web开发者和安全专业人员需要了解它&#xf…

tomcat控制台中文信息显示乱码

问题现象 我的tomcat版本是10.1版本。 在cmd下启动tomcat,会新打开控制台输出窗口: 控制台窗口输出的中文信息是乱码: 问题原因 产生这个问题的原因是:控制台窗口的编码和输出到控制台窗口的日志信息编码不一致。 查看tomc…

【开发技能】-解决visio交叉线(跨线)交叉点弯曲问题

问题 平时工作中使用visio作图时,经常会遇到交叉线在相交时会形成一个弯曲弓形,这十分影响视图效果。可以采用下面的方法消除弓形。 方法 第一步:菜单栏--设计---连接线 第二步:选中这条交叉线---点击显示跨线 最终问题得到解决…

【Java】实现顺序表基本的操作(数据结构)

文章目录 前言顺序表1、打印顺序表2、增加元素3、在任意位置增加元素4、判断是否包含某个元素5、查找某个元素对于的位置6、获取任意位置的元素7、将任意位置的元素设为value8、删除第一次出现的关键字9、获取顺序表长度10、清空顺序表总结 前言 在了解顺序表之前我们要先了解…

编织魔法世界——计算机科学的奇幻之旅

文章目录 每日一句正能量前言为什么当初选择计算机行业计算机对自己人生道路的影响后记 每日一句正能量 人生就像赛跑,不在乎你是否第一个到达尽头,而在乎你有没有跑完全程。 前言 计算机是一个神奇的领域,它可以让人们创造出炫酷的虚拟世界…

gpt3、gpt2与gpt1区别

参考:深度学习:GPT1、GPT2、GPT-3_HanZee的博客-CSDN博客 Zero-shot Learning / One-shot Learning-CSDN博客 Zero-shot(零次学习)简介-CSDN博客 GPT-2 模型由多层单向transformer的解码器部分构成,本质上是自回归模型…

【Android】查看keystore的公钥和私钥

前言: 查看前准备好.keystore文件,安装并配置openssl、keytool。文件路径中不要有中文。 一、查看keystore的公钥: 1.从keystore中获取MD5证书 keytool -list -v -keystore gamekeyold.keystore 2.导出公钥文件 keytool -export -alias …