这一次和spring源码贡献者有多近

Posted 源码八部

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了这一次和spring源码贡献者有多近相关的知识,希望对你有一定的参考价值。

身为一个Java的coder,一直以成为优秀源码贡献者为目标努力。最近工作中发现一个springboot的case,我知道机会来了,话不多说,直接进入正题。


工程背景

1、容器出于性能考虑选择undertow容器,弃用tomcat。

2、SPRING WEB

3、表单请求,含中文字符。


CASE复现

表单请求,中文乱码(输入的是‘中文’两个字)


代码如下

springboot版本:2.3.1.RELEASE

pom依赖:

<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-undertow</artifactId> </dependency>
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> </dependencies>

controller层:

@RequestMapping(value = "/api")@RestController@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)public class ContainerController {
public static final String VALUE = "中文";
@PostMapping(value = "/test", consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE}) public Boolean test(String key){ return VALUE.equals(key); }
public static void main(String[] args) { SpringApplication.run(ContainerController.class, args); }}

调用:

###模拟 发送form表单请求POST localhost:8080/api/testContent-Type: application/x-www-form-urlencoded
key=中文


看了下自己写的代码,核心大概也就算一行吧。其他的全是springboot自带code,问题一定出在springboot吧,这么思考,我觉得没毛病。出现BUG我心里居然乐开了花,心想这个问题还不简单,先找到在哪里转成乱码的,然后正确转换一下,再提个MR,这样我也是SPRING的源码贡献者啦!!!


以上是关于这一次和spring源码贡献者有多近的主要内容,如果未能解决你的问题,请参考以下文章

打金?工作室?账号被封?游戏灰黑产离我们有多近

打金?工作室?账号被封?游戏灰黑产离我们有多近

打金?工作室?账号被封?游戏灰黑产离我们有多近

打金?工作室?账号被封?游戏灰黑产离我们有多近

html 内部厚度框中iframe的距离有多近

历史离你有多近