相关疑难解决方法(0)

如何将POJO转换为JSON,反之亦然?

我想知道是否有可用于将POJO对象转换为JSON对象的Java API,反之亦然.

java json pojo

50
推荐指数
3
解决办法
12万
查看次数

java.lang.NoSuchMethodError:org.json.JSONObject。<init>(Ljava / lang / Object;)V

我有一个基本的SpringBoot 2.1.5.RELEASE应用程序。使用Spring Initializer,JPA,嵌入式Tomcat,Thymeleaf模板引擎,并将其打包为带有某些RestController的可执行JAR文件。

在控制器的1中,这是我发送的正文:

{
    "depositHotel": "xxx",
    "destinationHotel": "aaa",
    "depositHotelAmount": "0.2",
    "destinationHotelAmount": "4",
    "destinationAddress": [{
        "address": "asdf",
        "tag": ""
    }],
    "refundAddress": [{
        "address": "pio",
        "tag": ""
    }]
}
Run Code Online (Sandbox Code Playgroud)

因此,我创建了该类以将其作为RequestBody发送:

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"address",
"tag"
})
public class Address {



    public Address() {
        super();
    }

    public Address(String address) {
        super();
        this.address = address;
    }

    @JsonProperty("address")
    private String address;
    @JsonProperty("tag")
    private Object tag;


    @JsonProperty("address")
    public String getAddress() {
    return address;
    }

    @JsonProperty("address")
    public void setAddress(String address) {
    this.address = address;
    }

    @JsonProperty("tag")
    public …
Run Code Online (Sandbox Code Playgroud)

java spring json spring-mvc spring-boot

5
推荐指数
3
解决办法
436
查看次数

将POJO转换为Map

我有以下内容:

public class ChargeRequest {
    @Expose
    private String customerName;
    @Expose
    private String stripeToken;
    @Expose
    private String plan;
    @Expose
    private String[] products;

    gettersAndSetters()...

    public Map<String, Object> toMap() {
        return gson.fromJson(this, new TypeToken<Map<String, Object>>() {
        }.getType());
    }

    public String toString() {
        return gson.toJson(this, getClass());
    }
}
Run Code Online (Sandbox Code Playgroud)

我正试图转换ChargeRequest成一个Map<String, Object>与Gson.

我的适配器:

public static class JsonAdapter implements  JsonDeserializer<ChargeRequest>{
        @Override
        public ChargeRequest deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
            ChargeRequest cr = new ChargeRequest();
            JsonObject o = json.getAsJsonObject();
            o.add("customerName", o.get("customerName")); …
Run Code Online (Sandbox Code Playgroud)

java json gson stripe-payments

4
推荐指数
2
解决办法
8348
查看次数

标签 统计

java ×3

json ×3

gson ×1

pojo ×1

spring ×1

spring-boot ×1

spring-mvc ×1

stripe-payments ×1