Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.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
Java 在spring boot中为复杂的请求主体创建DTO的方法应该是什么_Java_Spring Boot - Fatal编程技术网

Java 在spring boot中为复杂的请求主体创建DTO的方法应该是什么

Java 在spring boot中为复杂的请求主体创建DTO的方法应该是什么,java,spring-boot,Java,Spring Boot,我是Spring boot的新手,我需要创建一个DTO来映射我的请求主体。请在下面查找请求正文: { "request":{ "header":{ "property_a":"xxx", "property_b":"xxx", "property_c":123 },

我是Spring boot的新手,我需要创建一个DTO来映射我的请求主体。请在下面查找请求正文:

 {
   "request":{
      "header":{
         "property_a":"xxx",
         "property_b":"xxx",
         "property_c":123
      },
      "data":{
         "search":{
            "last_name":"xxx",
            "first_name":"xxx",
            "birth_date":"xxx",
            "phone_number":"xxx"
         }
      }
   }

我将如何创建DTO来映射上述json主体请求?

希望下面可以是您可以遵循的方法之一-

-----------------------------------com.example.Data.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"search"
})
public class Data {

@JsonProperty("search")
private Search search;

@JsonProperty("search")
public Search getSearch() {
return search;
}

@JsonProperty("search")
public void setSearch(Search search) {
this.search = search;
}

}
-----------------------------------com.example.Example.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"request"
})
public class Example {

@JsonProperty("request")
private Request request;

@JsonProperty("request")
public Request getRequest() {
return request;
}

@JsonProperty("request")
public void setRequest(Request request) {
this.request = request;
}

}
-----------------------------------com.example.Header.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"property_a",
"property_b",
"property_c"
})
public class Header {

@JsonProperty("property_a")
private String propertyA;
@JsonProperty("property_b")
private String propertyB;
@JsonProperty("property_c")
private Integer propertyC;

@JsonProperty("property_a")
public String getPropertyA() {
return propertyA;
}

@JsonProperty("property_a")
public void setPropertyA(String propertyA) {
this.propertyA = propertyA;
}

@JsonProperty("property_b")
public String getPropertyB() {
return propertyB;
}

@JsonProperty("property_b")
public void setPropertyB(String propertyB) {
this.propertyB = propertyB;
}

@JsonProperty("property_c")
public Integer getPropertyC() {
return propertyC;
}

@JsonProperty("property_c")
public void setPropertyC(Integer propertyC) {
this.propertyC = propertyC;
}

}
-----------------------------------com.example.Request.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"header",
"data"
})
public class Request {

@JsonProperty("header")
private Header header;
@JsonProperty("data")
private Data data;

@JsonProperty("header")
public Header getHeader() {
return header;
}

@JsonProperty("header")
public void setHeader(Header header) {
this.header = header;
}

@JsonProperty("data")
public Data getData() {
return data;
}

@JsonProperty("data")
public void setData(Data data) {
this.data = data;
}

}
-----------------------------------com.example.Search.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"last_name",
"first_name",
"birth_date",
"phone_number"
})
public class Search {

@JsonProperty("last_name")
private String lastName;
@JsonProperty("first_name")
private String firstName;
@JsonProperty("birth_date")
private String birthDate;
@JsonProperty("phone_number")
private String phoneNumber;

@JsonProperty("last_name")
public String getLastName() {
return lastName;
}

@JsonProperty("last_name")
public void setLastName(String lastName) {
this.lastName = lastName;
}

@JsonProperty("first_name")
public String getFirstName() {
return firstName;
}

@JsonProperty("first_name")
public void setFirstName(String firstName) {
this.firstName = firstName;
}

@JsonProperty("birth_date")
public String getBirthDate() {
return birthDate;
}

@JsonProperty("birth_date")
public void setBirthDate(String birthDate) {
this.birthDate = birthDate;
}

@JsonProperty("phone_number")
public String getPhoneNumber() {
return phoneNumber;
}

@JsonProperty("phone_number")
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}

}

希望下面能成为您可以遵循的方法之一-

-----------------------------------com.example.Data.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"search"
})
public class Data {

@JsonProperty("search")
private Search search;

@JsonProperty("search")
public Search getSearch() {
return search;
}

@JsonProperty("search")
public void setSearch(Search search) {
this.search = search;
}

}
-----------------------------------com.example.Example.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"request"
})
public class Example {

@JsonProperty("request")
private Request request;

@JsonProperty("request")
public Request getRequest() {
return request;
}

@JsonProperty("request")
public void setRequest(Request request) {
this.request = request;
}

}
-----------------------------------com.example.Header.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"property_a",
"property_b",
"property_c"
})
public class Header {

@JsonProperty("property_a")
private String propertyA;
@JsonProperty("property_b")
private String propertyB;
@JsonProperty("property_c")
private Integer propertyC;

@JsonProperty("property_a")
public String getPropertyA() {
return propertyA;
}

@JsonProperty("property_a")
public void setPropertyA(String propertyA) {
this.propertyA = propertyA;
}

@JsonProperty("property_b")
public String getPropertyB() {
return propertyB;
}

@JsonProperty("property_b")
public void setPropertyB(String propertyB) {
this.propertyB = propertyB;
}

@JsonProperty("property_c")
public Integer getPropertyC() {
return propertyC;
}

@JsonProperty("property_c")
public void setPropertyC(Integer propertyC) {
this.propertyC = propertyC;
}

}
-----------------------------------com.example.Request.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"header",
"data"
})
public class Request {

@JsonProperty("header")
private Header header;
@JsonProperty("data")
private Data data;

@JsonProperty("header")
public Header getHeader() {
return header;
}

@JsonProperty("header")
public void setHeader(Header header) {
this.header = header;
}

@JsonProperty("data")
public Data getData() {
return data;
}

@JsonProperty("data")
public void setData(Data data) {
this.data = data;
}

}
-----------------------------------com.example.Search.java-----------------------------------

package com.example;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"last_name",
"first_name",
"birth_date",
"phone_number"
})
public class Search {

@JsonProperty("last_name")
private String lastName;
@JsonProperty("first_name")
private String firstName;
@JsonProperty("birth_date")
private String birthDate;
@JsonProperty("phone_number")
private String phoneNumber;

@JsonProperty("last_name")
public String getLastName() {
return lastName;
}

@JsonProperty("last_name")
public void setLastName(String lastName) {
this.lastName = lastName;
}

@JsonProperty("first_name")
public String getFirstName() {
return firstName;
}

@JsonProperty("first_name")
public void setFirstName(String firstName) {
this.firstName = firstName;
}

@JsonProperty("birth_date")
public String getBirthDate() {
return birthDate;
}

@JsonProperty("birth_date")
public void setBirthDate(String birthDate) {
this.birthDate = birthDate;
}

@JsonProperty("phone_number")
public String getPhoneNumber() {
return phoneNumber;
}

@JsonProperty("phone_number")
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}

}