将JSON数组传递给Java Springs控制器
我正在尝试将此JSON传递给Springs控制器:将JSON数组传递给Java Springs控制器,java,json,spring-mvc,Java,Json,Spring Mvc,我正在尝试将此JSON传递给Springs控制器: {"orderList":["IS_cb-A1-3","IS_cb-A1-4","IS_cb-A1-1","IS_cb-A1-2","IS_cb-A1-3"]} 以下是方法声明: public @ResponseBody JsonResponse orderCertificates(@ModelAttribute CertificateRequest certificateOrder, BindingResult result ) 这是豆子
{"orderList":["IS_cb-A1-3","IS_cb-A1-4","IS_cb-A1-1","IS_cb-A1-2","IS_cb-A1-3"]}
以下是方法声明:
public @ResponseBody JsonResponse orderCertificates(@ModelAttribute CertificateRequest certificateOrder, BindingResult result )
这是豆子:
public class CertificateRequest {
private String[] orderList = null;
private List<String> mbsResponse = new ArrayList<String>();
public String[] getOrderList() {
return orderList;
}
public void setOrderList(String[] orderList) {
this.orderList = orderList;
}
public List<String> getMbsResponse() {
return mbsResponse;
}
public void setMbsResponse(List<String> mbsResponse) {
this.mbsResponse = mbsResponse;
}
}
公共类证书请求{
私有字符串[]orderList=null;
私有列表mbsResponse=new ArrayList();
公共字符串[]getOrderList(){
返回订单列表;
}
public void setOrderList(字符串[]orderList){
this.orderList=订单列表;
}
公共列表getMbsResponse(){
返回MBS响应;
}
公共无效设置mbsResponse(列表mbsResponse){
this.mbsResponse=mbsResponse;
}
}
我不知道如何构建这个bean(它不工作),以便我可以访问这个数组。任何帮助都将不胜感激。此请求映射方法的签名(在3.1 Spring MVC中)应适用于您:
@RequestMapping(value="/cert", consumes="application/json", produces="application/json")
public @ResponseBody CertificateRequest orderCertificates(@RequestBody CertificateRequest certificateOrder){
//
}
我已经用@RequestBody
标记了CertificateRequest,并删除了BindingResult
更新:发布代码,这是我的方法的外观-
@RequestMapping(value="/cert", consumes="application/json", produces="application/json")
public @ResponseBody CertificateRequest orderCertificates(@RequestBody CertificateRequest certificateOrder){
System.out.println(certificateOrder);
return certificateOrder;
}
在http请求中,当orderList是字符串时,我已经显式地将内容类型设置为“application/json”:没问题。它需要是一个数组,当它停止工作时。是的,它也作为一个数组工作,在我的机器中,这是打印在方法体中的字符串:
CertificateRequest[orderList=[is_cb-A1-3,is_cb-A1-4,is_cb-A1-1,is_cb-A1-2,is_cb-A1-3],mbsResponse=[]