SpringBoot 参数符号转义,用这个包下面的类

 

SpringBoot 参数符号转义,用这个包下面的类

org.apache.commons.text.StringEscapeUtils 

String team = StringEscapeUtils.unescapeHtml4(biUserOrganization.getTeam());

如题所示,之前一直使用commons-lang3-3.x.jar 这个jar包里面的 org.apache.commons.lang3.StringEscapeUtils 类来转义特殊字符,但是最近发现使用这个类会出现以下提示:

看提示是说 StringEscapeUtils 这个类已经过期了,提醒使用新的替代类。看了下这个类的官方文档,很自然地找到了新的替代类——org.apache.commons.text.StringEscapeUtils

因此,使用Maven引用相应的jar包即可解决这个问题:

或者直接去Maven仓库下载这个jar包,下载地址如下:

转载于:https://www.cnblogs.com/handsome1013/p/11608542.html

### 解决 Spring Boot 请求头参数显示为问号的问题 在开发基于 Spring Boot 的应用程序时,遇到请求头参数显示为问号的情况通常是因为编码问题或配置不当所致。为了确保能够正确接收并解析来自客户端的请求头数据,可以采取以下措施: #### 1. 设置正确的字符集编码 确保服务器端和客户端都使用相同的字符集编码是非常重要的。默认情况下,HTTP 协议采用 ISO-8859-1 编码方式来传输头部信息。如果发送方使用的不是这种标准编码,则可能导致乱码现象。 可以通过设置 `server.servlet.encoding` 属性,在 application.properties 文件中定义全局字符集编码规则[^1]: ```properties # 配置文件application.properties server.servlet.encoding.force=true server.servlet.encoding.charset=UTF-8 ``` #### 2. 使用 @RequestHeader 注解读取自定义 Header 值 当需要访问 HTTP 请求中的 header 字段时,推荐使用 `@RequestHeader` 注解而不是尝试通过其他途径间接获取这些值。此注解可以直接映射到方法形参上,并支持多种匹配模式以及默认值设定等功能[^2]。 示例代码如下所示: ```java @GetMapping("/test") public String test(@RequestHeader(value="Custom-Header", required=false) String customHeader){ System.out.println(customHeader); return "success"; } ``` #### 3. 处理特殊字符转义 对于一些特殊的非 ASCII 符号(如中文),浏览器会自动将其转换成 URL 编码形式再放入 headers 中传送出去;而服务端接收到之后也需要做相应的反序列化操作才能得到原始字符串表示。因此建议对接口文档进行详细的说明,告知调用者应该如何正确地构建带有复杂内容型的 request line 和 message body 结构[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值