Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在使用SpringBoot开发的RESTAPI中映射到Java对象时,使JSON有效负载字段不区分大小写_Java_Json_Spring_Rest_Spring Boot - Fatal编程技术网

在使用SpringBoot开发的RESTAPI中映射到Java对象时,使JSON有效负载字段不区分大小写

在使用SpringBoot开发的RESTAPI中映射到Java对象时,使JSON有效负载字段不区分大小写,java,json,spring,rest,spring-boot,Java,Json,Spring,Rest,Spring Boot,我正在使用SpringBoot应用程序开发RESTAPI。在这里,我希望在映射到Java对象时,使有效负载(JSON)中的字段不区分大小写。下面是我的代码 有效载荷 {“限制”:1,“名称”:“马修·菲利普斯”} 请求对象 private String limit; private String name; public String getLimit() { return limit; } public void setLimit(String limit) {

我正在使用SpringBoot应用程序开发RESTAPI。在这里,我希望在映射到Java对象时,使有效负载(JSON)中的字段不区分大小写。下面是我的代码

有效载荷 {“限制”:1,“名称”:“马修·菲利普斯”}

请求对象

private String limit;
private String name;

public String getLimit() {
      return limit;
    }

    public void setLimit(String limit) {
        this.limit = limit;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
我直接使用@RequestBody Spring注释将JSON负载映射到java对象。我这里的问题是如何使java对象映射到忽略大小写的字段

问候,,
Rakesh

我最近通过注释配置找到了一个解决方案:

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.fasterxml.jackson.databind.MapperFeature;
import com.fasterxml.jackson.databind.ObjectMapper;

@Configuration
public class Config {

    @Bean
    public ObjectMapper objectMapper() {
        ObjectMapper mapper = new ObjectMapper();
        mapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true);
        return mapper;
    }

}
我正在使用这些依赖项:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.3.RELEASE</version>
</parent>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
    </dependency>

    <dependency>
        <groupId>com.fasterxml.jackson.module</groupId>
        <artifactId>jackson-module-jaxb-annotations</artifactId>
        <version>2.6.5</version>
    </dependency>

org.springframework.boot
spring启动程序父级
1.3.3.1发布
org.springframework.boot
弹簧启动装置
org.springframework.boot
SpringBootStarterWeb
org.springframework
弹簧芯
com.fasterxml.jackson.module
jackson模块jaxb注释
2.6.5

祝你好运。

好吧,如果它是Spring Boot应用程序,你可以在你的
应用程序中使用它。属性文件:
spring.jackson.mapper.accept\u case\u insensitive\u properties=true

或者,如果您使用yaml:

spring:
  jackson:
    mapper:
      accept_case_insensitive_properties: true

我想在春季mvc中做这件事。有什么想法吗?我想在春季mvc上做。有什么想法吗?@parladneupane这可能会有帮助:我需要使用连字符:
spring.jackson.mapper.accept不区分大小写的属性=true