[英]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.