簡體   English   中英

如何將 JavaObject 從 POJO 轉換為 JSONString/JSONObject

[英]How to convert JavaObject from POJO to JSONString/JSONObject

我有一個返回 JAVAObject 的 POJO,現在我想將其轉換為 JSONObject,但我的 POJO 包含一個未使用以下代碼轉換的數組:

Email Class:

package pojo;

public class Email {

String TYPE;
String VALUE;

public Email() {
}

public Email(String TYPE, String VALUE) {

    this.TYPE = TYPE;

    this.VALUE = VALUE;

}

public void setTYPE(String TYPE) {

    this.TYPE = TYPE;

}

public String getTYPE() {

    return this.TYPE;

}

public void setVALUE(String VALUE) {

    this.VALUE = VALUE;

}

public String getVALUE() {

    return this.VALUE;
}

}

PostAccountCreateAPI Class:

package pojo;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;

public class PostAccountCreateAPI {

private String FirstName;
private String LastName;
private String PASSWORD;
private List<Email> Email;
static List<Email> emailList = new ArrayList<>();

public PostAccountCreateAPI() {
}


public void setFirstName(String FirstName) {

    this.FirstName = FirstName;

}

public String getFirstName() {

    return this.FirstName;

}

public void setLastName(String LastName) {

    this.LastName = LastName;

}

public String getLastName() {

    return this.LastName;

}

public void setPASSWORD(String PASSWORD) {

    this.PASSWORD = PASSWORD;

}

public String getPASSWORD() {

    return this.PASSWORD;

}

public void setEmail(List<Email> Email) {

    this.Email = Email;

}

public List<Email> getEmail() {

    return this.Email;

}

}

我創建了 PostAccountCreateAPI Class 的 Object 並轉換為 JSONString,如下所示:

ObjectMapper mapper = new ObjectMapper();   
String json = mapper.writeValueAsString(postAccountCreateAPI);
System.out.println(json);

But I am not getting Email as array, Below is the response I got: {"lastName":null,"email":null,"firstName":null,"password":null}

我期待它采用以下格式:

    "FirstName": "FSFBE",
    "LastName": "LoUSj",
    "PASSWORD": "p@$$word123",
    "Email": [
        {
            "TYPE": "Primary",
            "VALUE": "test7EZK0@mail7.io"
        }
    ]
}

您的postAccountCreateAPI初始化似乎有問題。 您能否復制調用構造函數和/或設置屬性的行? 另外,我認為您應該遵循 java 命名約定。 你幾乎違反了所有規則。 https://www.javatpoint.com/java-naming-conventions

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM