gpt4 book ai didi

javascript - 如何在 json 负载中格式化 Map

转载 作者:行者123 更新时间:2023-11-30 12:04:21 24 4
gpt4 key购买 nike

我正在尝试将实体“订单”从客户端发送到 Rest/Api Spring Boot后端。在我的 OrderEntity 中,包含购买该订单产品的 Map。

我们正在尝试使用 postman 软件生成正确的 JSON 字符串,他们希望通过 post 请求附加到 body 中。

@ElementCollection
@CollectionTable(name = "product.order", joinColumns = @JoinColumn(name = "order.id"))
@MapKeyJoinColumn(name = "product.id")
@Column(name = "quantity")
//@JsonSerialize(keyUsing = ProdottoMapSerializer.class)
@JsonDeserialize(keyUsing = ProdottoMapDeserializer.class)

订单实体

public OrderEntity(Map<ProductEntity, Integer> product, ClientEntity cliente,Integer id, String data, Float totale, String fattura) {
this.product = product;
this.client = client;
this.id = id;
this.data = data;
this.totale = totale;
this.fattura = fattura;
}
@ManyToOne
private ClientEntity cliente;

产品实体

public ProductEntity(Integer id, String nome, String descrizione, String categoria, Float prezzo, String foto,
Integer quantitaMagazzino, Integer spedizione_veloce) {
this.id = id;
this.nome = nome;
this.descrizione = descrizione;
this.categoria = categoria;
this.prezzo = prezzo;
this.foto = foto;
this.quantitaMagazzino = quantitaMagazzino;
this.spedizione_veloce = spedizione_veloce;
}

我们尝试在 post 请求中使用 json,使用这种类型的正文:

{
"id": 10,
"data": "2019-07-11 00:00:00",
"totale": null,
"fattura": null,
"product": {
"ProductEntity{id=4, nome='oneplus 6t', descrizione='smartphone', categoria='elettronica', prezzo=500.0, foto='', quantitaMagazzino=4, spedizione_veloce=0}": 2
},
"cliente": {
"id": 3
}
}

“product”字段有错误,我们写的格式不对,这是一种问题:

"status": 400,
"error": "Bad Request",
"message": "JSON parse error: For input string: \"ProductEntity{id=4, nome='oneplus 6t', descrizione='smartphone', categoria='elettronica', prezzo=500.0, foto='', quantitaMagazzino=4, spedizione_veloce=0}\"; nested exception is com.fasterxml.jackson.databind.JsonMappingException

这是我的发帖请求:

 @PostMapping("/postorder") //PROVA aggiunge un ordine 
public ResponseEntity<?> postOrder(@RequestBody OrderEntity order){

orderRepository.save(ordine);


return new ResponseEntity<>(Collections.singletonMap("id", ordine.getId()),HttpStatus.CREATED)

最佳答案

我认为您在 ProductEntity 中缺少 :,这就是为什么它不能在映射中被解析为 obj 的原因。尝试让我知道它是否解决了问题,我还没有测试过。

{
"id": 10,
"data": "2019-07-11 00:00:00",
"totale": null,
"fattura": null,
"product": {
"ProductEntity: {id=4, nome='oneplus 6t', descrizione='smartphone', categoria='elettronica', prezzo=500.0, foto='', quantitaMagazzino=4, spedizione_veloce=0}": 2
},
"cliente": {
"id": 3
}
}

关于javascript - 如何在 json 负载中格式化 Map<Entity,integer>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57181608/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com