Java 前后端传参忽略大小写问题解决

最近开发的过程中遇到个问题,调用接口传参的时候,如果改变参数名的大小写,服务端获取不到值

在C#中,默认忽略大小写的,但Java明显对大小写敏感的。

解决这个问题,我们要用到 jackson

添加依赖:

 1         <dependency>
 2             <groupId>com.fasterxml.jackson.core</groupId>
 3             <artifactId>jackson-core</artifactId>
 4             <version>2.11.2</version>
 5         </dependency>
 6         <dependency>
 7             <groupId>com.fasterxml.jackson.core</groupId>
 8             <artifactId>jackson-databind</artifactId>
 9             <version>2.11.2</version>
10         </dependency>
11         <dependency>
12             <groupId>com.fasterxml.jackson.core</groupId>
13             <artifactId>jackson-annotations</artifactId>
14             <version>2.11.2</version>
15         </dependency>

注意:要注意jackson引入的版本,如果与 springboot 版本不对应,会报错:java.lang.NoClassDefFoundError

配置文件中,设置  jackson

spring.jackson.mapper.accept-case-insensitive-properties=true

以上便是配置的全部,接下来测试

小写请求:

 

 大写请求:

 

可以看到,当改变参数的大小写,后端同样可以接到值。

 

其实 jackson 是一个特别棒的Java技术栈内的 JSON解析工具,可以多研究研究它。

 

posted @ 2021-01-07 13:47  NCat  阅读(2875)  评论(0)    收藏  举报