post请求如何获取数组参数呢?
如post请求参数为 json格式,json内部含有 test5的数组参数,在不进行字符串切割的情况下。如何获取数组内的值呢?
springmvc请求方式
@RequestMapping(value="mytest",method=RequestMethod.POST)
1.增加获取参数
首先在请求方法中新增参数 @RequestBody param为自定义的。
public void test( @RequestBody String param) {
}
2. 对象转换 将String类型 转成 json
//对象转化
JSONObject jsonObject = JSONObject.parseObject(param);
3.将test5数组转成jsonArray
//获取test5
JSONArray jsonArray = jsonObject.getJSONArray("test5");
4.jsonArray 迭代器
//迭代器 子单
Iterator<Object> jsonIterator = jsonArray.iterator();
5. 循环获取
while(jsonIterator.hasNext()) {
//获取数据并转化成JSONObject
JSONObject parseObject = (JSONObject) jsonIterator.next();
//sonOrderId1
String sonOrderId1= parseObject.getString("sonOrderId1");
//sonXml
String sonXml = parseObject.getString("sonXml");
}
6.总的代码
public void test( @RequestBody String param) {
//对象转化
JSONObject jsonObject = JSONObject.parseObject(param);
//获取test5
JSONArray jsonArray = jsonObject.getJSONArray("test5");
while(jsonIterator.hasNext()) {
//获取数据并转化成JSONObject
JSONObject parseObject = (JSONObject) jsonIterator.next();
//sonOrderId1
String sonOrderId1= parseObject.getString("sonOrderId1");
//sonXml
String sonXml = parseObject.getString("sonXml");
/**********************可对参数进行操作******************/
}
}
获取完毕