【问题标题】:How to bind an array field in java spring framwork?如何在java spring框架中绑定数组字段?
【发布时间】:2019-08-01 17:33:28
【问题描述】:

您好,这是我的模型,其中包含一些简单的字段和一组 OrderModel。

public class ActiveRequsetModel {
 private Long id;
 private String applicatorDescription;
 private Customer customer;
 private Set<OrderModel> odersModel = new HashSet<>();
}

这是我在控制器中的方法

@RequestMapping(value = "/register-request", method = RequestMethod.POST, consumes = "application/json")
    @ResponseBody
    public ResponseEntity<String> registerActiveRequest(@RequestBody ActiveRequsetModel activeRequsetModel){

        customerService.registerActiveRequest(activeRequsetModel);

        return new ResponseEntity<>("Request registered.", HttpStatus.OK);
    }

这就是我从客户端得到的,如您所见,它包括一个 applicatorDescription、客户对象和一个带有关键 ordersModel 的 orderModel 列表。

{
    "applicatorDescription" : "quick please",
    "customer" : {
       "id" : 1
    },
"ordersModel" : 
[
    {
        "transfereeName" : "Alex",
        "address" : "home",
        "countOrSize" : 12.5,
        "derap" : 4,
        "description" : "descriptionnnnn",
        "kalite" : {
            "id" : 1
        },
        "product" : {
            "id" : 1
        }
    }
]

}

当我收到请求时,spring 可以绑定 customer 和 applicatorDescription,但无法绑定 ordersModel。 我该怎么办?

【问题讨论】:

  • 确保没有拼写错误:ActiveRequsetModel -> ActiveRequestModel, oderModel -> ordersModel

标签: java json spring


【解决方案1】:

你的模型类在这里:

public class ActiveRequsetModel {
 private Long id;
 private String applicatorDescription;
 private Customer customer;
 private Set<OrderModel> oderModel = new HashSet<>();
}

private Set&lt;OrderModel&gt; oderModel = new HashSet&lt;&gt;();改成

private List<OrderModel> oderModel

另外,OrderModel 类应该是独立的类。如果OrderModel 是内部类,那么 jacson 无法将请求与类绑定。

欲了解更多信息,请访问this thread

希望对你有帮助

【讨论】:

  • 不行,不过我改成这个私有的ArrayList ordersModel;它有效。
  • 谢谢你,你让我知道这样做:)
  • 很高兴听到我的回答对您有所帮助。如果此答案对您有帮助,则接受为最佳答案并放弃投票。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-06
  • 2016-12-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多