无法读取 json post 方法(jackson)

我有对象 Bill,我在 @JsonRootName(value = "bill") 的位置。我有结果 Bill{siteId='null', billId='null'} 我在哪里犯了错误?我的 json


{

    "bill":

    {

        "siteId":"gkfhuj-00",

        "billId":"11b0309c-42b8-4d20-bd58-3e854f039287"

    }

}

我的班级法案


@JsonRootName(value = "bill")

public class Bill {

    private final String siteId;

    private final String billId;


    public Bill(String siteId, String billId) {

        this.siteId = siteId;

        this.billId = billId;

    }



    public String getSiteId() {

        return siteId;

    }


    public String getBillId() {

        return billId;

    }


    @Override

    public String toString() {

        return "Bill{" +

                "siteId='" + siteId + '\'' +

                ", billId='" + billId + '\'' +

                '}';

    }

}

我使用 Json 对象的方法


    @PostMapping("/json")

    @ResponseBody

    public ResponseEntity getJson(@RequestBody Bill bill) {


        System.out.println(bill.toString());


        return null;

    }


眼眸繁星
浏览 99回答 1
1回答

开心每一天1111

问题可能是杰克逊的“功能切换”。您需要在您的ObjectMapper. @Bean所以如果你使用 Spring,这应该进入你的配置的某个地方:ObjectMapper mapper = new ObjectMapper(); mapper.configure(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE, true);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java