繁体   English   中英

restTemplate.postForObject 没有发送 object 的所有成员变量

[英]restTemplate.postForObject not sending all the member variables of object

我正在尝试使用 restTemplate.postForObject 将 object 发布到另一个服务,但其中一个成员变量值为 0。但是当我尝试在 chrome 浏览器中使用 rest 客户端发送相同的发布请求时,所有值都是去。 请帮助我在哪里做错了。

客户端代码

// Sender. Sending the seed object to bidServiceEndpoint + "seedbid".
    private Bid saveSeedBid(Seed seed) {
        Bid bid = new Bid();
        bid.setEmail(seed.getEmail());
        log.info("seed price = " + seed.getSeed_price());
        bid.setNew_price(seed.getSeed_price());
        bid.setSid(seed.getSid());
        log.info("seed info " + seed.toString());
        log.info("Saving seed bid " + bid.toString());
        return restTemplate.postForObject(bidServiceEndpoint + "seedbid", seed, Bid.class);

这是打印

2021-04-08 21:08:50.168  INFO 13912 --- [nio-5003-exec-7] murali.bidder.seed.service.SeedService   : Saving seed bid Bid(bid=null, bid_time=null, email=xyz@gmail.com, old_price=0, new_price=500, sid=41ee3f6e-0afd-4d26-b827-12e5687fadc2)

观察上面我正在传递 email、new_price 和 sid。 这里 new_price 的值为 500。

现在这里是服务器代码: -

    @PostMapping("/seedbid")
    public Bid saveSeedBid(@RequestBody Bid bid) {
        log.info("Saving seed bid " + bid.toString());
        return bidService.saveSeedBid(bid);
    }

这是打印

2021-04-08 21:08:50.189  INFO 13040 --- [nio-5004-exec-1] m.bidder.bid.controller.BidController    : Saving seed bid Bid(bid=null, bid_time=null, email=xyz@gmail.com, old_price=0, new_price=0, sid=41ee3f6e-0afd-4d26-b827-12e5687fadc2)

在这里,如果您观察到 email 和 sid 正常出现但 new_price 为 0。

请帮助为什么 new_price 为零。

这是投标 pojo


import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class Bid {

    private String bid;
    
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss.SSS")
    private Date bid_time;
    
    private String email;
    
    private int old_price;
    
    private int new_price;
    
    private String sid;
}

我想..对不起。 这是小错误。 在客户端代码中,我发送种子 object,它是种子类型,在服务器端,我期待出价 object 类型的出价。 我应该通过出价 object 而不是种子 object。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM