第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

將嵌套對(duì)象發(fā)送到 Spring POST

將嵌套對(duì)象發(fā)送到 Spring POST

繁花不似錦 2023-07-13 13:58:34
我有 Angular 發(fā)送的 JSON 字符串:{   "transaction_id": "1234",   "usage": "Test Usage",   "billing_address": {      "first_name": "name",      "last_name": "name",      "address1": "street 1234",      "zip_code": "11923"   },   "shipping_address": {      "first_name": "name",      "last_name": "name",      "address1": "street 1234",      "zip_code": "11923"   }  }Java代碼:public class DTO {    private String transaction_id;    private String usage;    private BillingAddress billingAddress;    private ShippingAddress shippingAddress;    ... getter/setter}public class BillingAddress {    private String firstName;    private String lastName;    private String address1;        private String zip_code;    ... getter/setter}public class ShippingAddress {    private String firstName;    private String lastName;    private String address1;        private String zip_code;    ... getter/setter}彈簧端點(diǎn):@PostMapping(value = "/{id}", consumes = { MediaType.APPLICATION_JSON_VALUE }, produces = { MediaType.APPLICATION_JSON_VALUE })      public ResponseEntity<?> handleWpfMessage(@PathVariable("id") id,              @RequestBody DTO data){        ....}映射內(nèi)部對(duì)象billing_address以及shipping_address正確映射值的正確方法是什么?我是否需要添加注釋才能正確映射它們?
查看完整描述

3 回答

?
慕沐林林

TA貢獻(xiàn)2016條經(jīng)驗(yàn) 獲得超9個(gè)贊

您應(yīng)該將以下注釋添加到 DTO 類中:


public class DTO {


    private String transaction_id;

    private String usage;


    @JsonProperty("billing_address")

    private BillingAddress billingAddress;


    @JsonProperty("shipping_address")

    private ShippingAddress shippingAddress;


    ... getter/setter

}


查看完整回答
反對(duì) 回復(fù) 2023-07-13
?
哆啦的時(shí)光機(jī)

TA貢獻(xiàn)1779條經(jīng)驗(yàn) 獲得超6個(gè)贊

您的角度客戶端使用蛇盒。為了使 jackson 正確反序列化,您可以使用以下命令進(jìn)行全局配置:

spring.jackson.property-naming-strategy=SNAKE_CASE

但是您也可以為特定的類配置它:

@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
public class DTO {
}


查看完整回答
反對(duì) 回復(fù) 2023-07-13
?
撒科打諢

TA貢獻(xiàn)1934條經(jīng)驗(yàn) 獲得超2個(gè)贊

正如已經(jīng)提到的,您可以在類中使用 Jackson 屬性映射注釋DTO。

@JsonProperty("billing_address")
private BillingAddress billingAddress;

這意味著,在 json 中,屬性billing_address將被分配給billingAddress變量。


查看完整回答
反對(duì) 回復(fù) 2023-07-13
  • 3 回答
  • 0 關(guān)注
  • 165 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)