根据@RequestBody弹簧启动初始化 ArrayList



我有以下代码:

@RequestMapping(value = "/checkInventory", consumes = "application/json", method = RequestMethod.POST)
@ResponseBody
public ResponseEntity<?> checkInventory (
// HEADERS
@RequestBody CheckInventoryRequest checkInventoryRequest) throws Exception {
// HEADERS LOGIC
CheckInventoryResponse checkInventoryResponse  = new CheckInventoryResponse();

杰伦

{
"supplier": "foo",
"supplierName": "ads",
"supplierLocation": "123",
"site": "goo",
"product": [
{
"lineItem": 1,
"manufacturer": "TEST",
"partNumber": "123",
},
{
"lineItem": 2,
"manufacturer": "TEST 2",
"partNumber": "3456",
}
]
}

我能够用常规值填充 POJO,但是如何使用product部分进行另一个ArrayList

我需要对JSON进行一些数据库检查,但我无法弄清楚如何保存ArrayList

哎呀库存响应

import java.io.Serializable;
public class CheckInventoryResponse implements Serializable {
private String site;
private String supplier;
private String supplierLocation;
private String supplierName;
private String lineItem;
private String manufacturer;
private String partNumber;
public String getSite() {
return site;
}
public void setSite(String site) {
this.site = site;
}
public String getSupplier() {
return supplier;
}
public void setSupplier(String supplier) {
this.supplier = supplier;
}
public String getSupplierLocation() {
return supplierLocation;
}
public void setSupplierLocation(String supplierLocation) {
this.supplierLocation = supplierLocation;
}
public String getSupplierName() {
return supplierName;
}
public void setSupplierName(String supplierName) {
this.supplierName = supplierName;
}
public String getLineItem() {
return lineItem;
}
public void setLineItem(String lineItem) {
this.lineItem = lineItem;
}
public String getManufacturer() {
return manufacturer;
}
public void setManufacturer(String manufacturer) {
this.manufacturer = manufacturer;
}
public String getPartNumber() {
return partNumber;
}
public void setPartNumber(String partNumber) {
this.partNumber = partNumber;
}
}

这是我的POJO课。每当调用我的端点时,都可以填充它,但我似乎无法弄清楚如何使用产品部分。

您可以为产品创建一个类,其中包含有关产品的详细信息。尝试以下课程:

class CheckInventoryRequest implements Serializable{
private String supplier;
private String supplierName;
private String supplierLocation;
private String site;
private List<Product> product;
public CheckInventoryRequest() {
}
public String getSupplier() {
return supplier;
}
public void setSupplier(String supplier) {
this.supplier = supplier;
}
public String getSupplierName() {
return supplierName;
}
public void setSupplierName(String supplierName) {
this.supplierName = supplierName;
}
public String getSupplierLocation() {
return supplierLocation;
}
public void setSupplierLocation(String supplierLocation) {
this.supplierLocation = supplierLocation;
}
public String getSite() {
return site;
}
public void setSite(String site) {
this.site = site;
}
public List<Product> getProduct() {
return product;
}
public void setProduct(List<Product> product) {
this.product = product;
}
}
class Product implements Serializable{
private Integer lineItem;
private String manufacturer;
private String partNumber;
public Product() {
}

public Integer getLineItem() {
return lineItem;
}
public void setLineItem(Integer lineItem) {
this.lineItem = lineItem;
}
public String getManufacturer() {
return manufacturer;
}
public void setManufacturer(String manufacturer) {
this.manufacturer = manufacturer;
}
public String getPartNumber() {
return partNumber;
}
public void setPartNumber(String partNumber) {
this.partNumber = partNumber;
}
}

此外,json 字符串无效,它具有额外的,。有效的 json 是

{
"supplier": "foo",
"supplierName": "ads",
"supplierLocation": "123",
"site": "goo",
"product": [
{
"lineItem": 1,
"manufacturer": "TEST",
"partNumber": "123"
},
{
"lineItem": 2,
"manufacturer": "TEST 2",
"partNumber": "3456"
}
]
}

将产品作为单独的类,然后将此类中的项目设为

List<Product> products = new ArrayList<Product>();

带吸气剂和二传手

最新更新