我有此JSON字符串与对象数组:
{DateFormat :[{column: 0, pattern: "yyyyMMdd"},
{column: 2, pattern: "yyyyMMdd"} ]}
我的用户的Spring MVC与杰克逊解析器..
必须如何在Java POJO的样子,我可以全自动分析此JSON字符串到对象?
在春天,我做它通常是这样的:
public @ResponseBody String login(@RequestBody DateFormat dataFormaPojo){
}
这适用于一个简单的JSON字符串,但我怎么能解析我的对象数组到Java对象,或者与它的对象一个ArrayList? 我想的是,杰克逊解析器处理这种全自动如果临危JSON文件。
编辑:我已经扩展了JSON文件一点点的创建此Java类,但它didn`t工作:
import java.io.Serializable;
public class DataFormat implements Serializable
{
private static
final long serialVersionUID = 1L;
private Integer column;
private String type;
private String pattern;
public Integer getColumn()
{
return column;
}
public void setColumn(Integer column)
{
this.column = column;
}
public String getType()
{
return type;
}
public void setType(String type)
{
this.type = type;
}
public String getPattern()
{
return pattern;
}
public void setPattern(String pattern)
{
this.pattern = pattern;
}
}
而DataFormList类
import java.io.Serializable;
import java.util.ArrayList;
import
java.util.List;
public class DataFormatList implements Serializable
{
private static final long serialVersionUID = 2514719982327593095L;
private List<DataFormat> DataFormat = new ArrayList<DataFormat> ();
public List<DataFormat> getDateFormats()
{
return DataFormat;
}
public void setDateFormats(List<DataFormat> formats)
{
this.DataFormat= formats;
}
}
在春天:
@RequestMapping(value="/save",method=
{
RequestMethod.GET,RequestMethod.POST
}
)
public @ResponseBody String createDataSource( @RequestBody DataFormatList dataFormaPojo)
{
for(DataFormat df: dataFormaPojo.getDateFormats())
{
System.out.println(df.getType());
}
return "";
}
JSON字符串,我GETT看起来是这样的:
{
"DataFormat": [
{
"column": 0,
"type": "number"
},
{
"column": 1,
"type": "number"
},
{
"column": 2,
"type": "number"
},
{
"column": 3,
"type": "number"
}
]
}
我能与杰克逊的对象设置自定义的名字,如果我想的是,该对象DataFormat
有一个其他的名字?
?为什么我的课没有解析JSON字符串? 我没有错误消息。
EDIT3:如果我在GOOLGE Chrome浏览器开发工具看,我收到了400错误的请求的消息,但在春天,我得到杰克逊没有错误消息,他不能解析我的数据到一个POJO ..