Как создать необходимые классы pojo для отправки вложенных json данных - PullRequest
0 голосов
/ 21 июня 2020

Мне нужно отправить следующий json запрос от android приложения. Я использую модификацию 2. Как создать класс pojo для отправки такого запроса json?

{
    "json_data": {
        "firstname": "fname",
        "lastname": "lname",
        "email": "test@gmail.com",
        "telephone": "0123456789",
        "salutation": "Mr.",
        "dob": "1997/08/15",
        "password":"123456"
    }
}

Ответы [ 4 ]

1 голос
/ 21 июня 2020

Надеюсь, вы спрашиваете, как сделать POJO из JSON

Вы можете попробовать использовать конвертер JSON в java здесь https://codebeautify.org/json-to-java-converter Просто вставьте JSON шаблон и нажмите convert. У вас будет класс POJO со всеми геттерами и сеттерами.

Также есть встроенный плагин, который вы можете использовать. попробуйте это https://plugins.jetbrains.com/plugin/8533-json2pojo

Удачного кодирования!

0 голосов
/ 21 июня 2020

Пожалуйста, используйте следующий способ, ваши поля слева должны содержать имя переменной в POJO.

Java:

class Data {
   public String firstname;
   public String lastname;
   public String email;
   public String telephonies;
   public String salutation;
   public String dob;
   public String password;
}

class Request{
     Data json_data;
}
      

Пожалуйста, дайте мне знать по любым вопросам, Надеюсь, это поможет .

0 голосов
/ 21 июня 2020
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

public class Example {

    @SerializedName("json_data")
    @Expose
    private JsonData jsonData;

    public JsonData getJsonData() {
        return jsonData;
    }

    public void setJsonData(JsonData jsonData) {
        this.jsonData = jsonData;
    }

}
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

public class JsonData {

    @SerializedName("firstname")
    @Expose
    private String firstname;
    @SerializedName("lastname")
    @Expose
    private String lastname;
    @SerializedName("email")
    @Expose
    private String email;
    @SerializedName("telephone")
    @Expose
    private String telephone;
    @SerializedName("salutation")
    @Expose
    private String salutation;
    @SerializedName("dob")
    @Expose
    private String dob;
    @SerializedName("password")
    @Expose
    private String password;

    public String getFirstname() {
        return firstname;
    }

    public void setFirstname(String firstname) {
        this.firstname = firstname;
    }

    public String getLastname() {
        return lastname;
    }

    public void setLastname(String lastname) {
        this.lastname = lastname;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getTelephone() {
        return telephone;
    }

    public void setTelephone(String telephone) {
        this.telephone = telephone;
    }

    public String getSalutation() {
        return salutation;
    }

    public void setSalutation(String salutation) {
        this.salutation = salutation;
    }

    public String getDob() {
        return dob;
    }

    public void setDob(String dob) {
        this.dob = dob;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

}

этот сайт создает их для вас

введите описание изображения здесь

0 голосов
/ 21 июня 2020

Попробуйте встроенные плагины для преобразования json в класс POJO, например,

  1. Go в android настройки студии

  2. Go в раздел плагинов

  3. Установите этот плагин для java

enter image description here

enter image description here

  1. Установите это плагин для kotlin

enter image description here

  1. Копировать json

  2. Нажмите на пакет, в котором вы хотите создать класс

  3. Нажмите на новый, затем выберите json для POJO, как это

введите описание изображения здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...