jsonObject转jsonArray 可以给jsonObject加个属性,例如:
JSONArray ja = new JSONArray();
String[] str=StrUtil.getStringFromBlob(orderList.get(k).getORDER_PRODUCT_INFO()).split("@\\|@");
for(int i =0;i<str.length;i++){
JSONObject jo =new JSONObject();
String[] strSort=str[i].split("#\\|#");
System.out.println("商品SKU编码:"+strSort[1]+"购买此商品的数量"+strSort[4]);
jo.put("sku_id", strSort[1]);
jo.put("stock_num", strSort[4]);
ja.add(jo);
}
JSONObject jsonStockNum=new JSONObject();
jsonStockNum.put("parameter", ja);
JSONObject jsonObject = JSONObject.parseObject(requestData);//解析请求的参数
if(jsonObject != null){
JSONArray jsonArray = jsonObject.getJSONArray("parameter");
if(jsonArray !=null && jsonArray.size() > 0){
JSONObject json = null;
String skuId = "";
String stockNumStr = "";
BigDecimal stockNum = new BigDecimal(0);
//商品sku集合,用于存放商品的sku
List<ProductSkuVO> productSkuList = new ArrayList<ProductSkuVO>();
//商品sku对象
ProductSkuVO productSkuVO = null;
for (int i = 0; i < jsonArray.size(); i++) {
json = jsonArray.getJSONObject(i);
//商品的sku编号
skuId = json.getString("sku_id");
//商品的购买数量
stockNumStr = json.getString("stock_num");
if(StrUtil.isNotNull(stockNumStr)){
stockNum = new BigDecimal(stockNumStr);
}
productSkuVO = new ProductSkuVO();
productSkuVO.setSKU_ID(skuId);
productSkuVO.setSTOCK_NUM(stockNum);
productSkuList.add(productSkuVO);
}
Map<String,Object> parameter = new HashMap<String, Object>();
parameter.put("parameters", productSkuList);
//循环update,回归库存
int count=productSkuService.modifyProductSkuById(parameter);
if(count == jsonArray.size()){
jsonResult.put("code", -1); //批量执行成功
}else{
jsonResult.put("code", 1); //批量执行失败
}
}
//1 字符串装换为对象,使用JSON的parse方法
alert("begin");
var text = '{"a":"1", "b":"2", "c":"3"}';
var jsonObject = JSON.parse(text, null);
alert("The jsonObject value is " +jsonObject.a + ";" + jsonObject.b + ";" + jsonObject.c);
//2 对象转换为字符串,使用JSON的stringify方法
alert(JSON.stringify(jsonObject));
//3 使用eval代替parse方法
var jsonObject2 = eval('(' + text + ')'); //这里直接写 eval(text) 会报错的
alert("The jsonObject2 value is " +jsonObject2.a + ";" + jsonObject2.b + ";" + jsonObject2.c);
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
public class JsonTest {
/**
* @param args
*/
@SuppressWarnings("unchecked")
public static void main(String[] args) {
//1 json对象转换为字符串
JSONObject subObject = new JSONObject();
subObject.put("ooo", "***");
subObject.put("ppp", "&&&");
JSONObject object = new JSONObject();
object.put("aaa", "111");
object.put("bbb", "222");
object.put("ccc", subObject);
System.out.println(object.toJSONString());
//2 json数组对象装换为字符串
JSONArray array = new JSONArray();
JSONObject object1 = new JSONObject();
object1.put("aaa", "111");
object1.put("bbb", "222");
JSONObject object2 = new JSONObject();
object2.put("aaa", "111");
object2.put("bbb", "222");
array.add(object1);
array.add(object2);
System.out.println(array.toJSONString());
//3 字符串转换为json对象
String jsonStr = "{\"aaa\":\"111\",\"ccc\":{\"ooo\":\"***\",\"ppp\":\"&&&\"},\"bbb\":\"222\"}";
JSONParser parser = new JSONParser();
try {
JSONObject parseObject = (JSONObject)parser.parse(jsonStr);
System.out.println("---->" + parseObject.toJSONString());
} catch (ParseException e) {
e.printStackTrace();
}
//4 字符串转换为数组
jsonStr = "[{\"aaa\":\"111\",\"bbb\":\"222\"},{\"aaa\":\"111\",\"bbb\":\"222\"}]";
try {
JSONArray parseObject = (JSONArray)parser.parse(jsonStr);
System.out.println("---->" + parseObject.toJSONString());
} catch (ParseException e) {
e.printStackTrace();
}
}
}
二级树状结构的json拼接:
List<SysProductClassVO> list = sysProductClassService.getSysProductClassByParentClassId(classVO); //查询出根目录
JSONArray jsonParent = new JSONArray();
if(list.size() > 0){
for (SysProductClassVO sysProductParent : list) {
List<SysProductClassVO> childList = sysProductClassService.getSysProductClassByParentClassId(sysProductParent); //根据父类的ID 查询所对应的子类
JSONArray childArray = new JSONArray();
JSONObject childObj = new JSONObject();
if(childList.size()>0){
for (SysProductClassVO sysProuctChild : childList) {
JSONObject jsonChild = new JSONObject();
jsonChild.put("childClassID",sysProuctChild.getCLASS_ID());
jsonChild.put("childClassName",sysProuctChild.getCLASS_NAME());
jsonChild.put("childIntro", sysProuctChild.getINTRO());
jsonChild.put("childClassPath", sysProuctChild.getCLASS_PATH());
jsonChild.put("childOrderNum", sysProuctChild.getORDER_NUM());
jsonChild.put("childSummaryImg", sysProuctChild.getSUMMARY_IMG());
childArray.add(jsonChild);
}
}
childObj.put("childArray", childArray);
childObj.put("parentId", sysProductParent.getCLASS_ID());
childObj.put("parentName", sysProductParent.getCLASS_NAME());
childObj.put("parentImg", sysProductParent.getSUMMARY_IMG());
jsonParent.add(childObj);
jsonResult.put("result", jsonParent);
}
jsonResult.put("code",1); //1代表查询成功并且有数据
jsonResult.put("msg", "成功有数据");
}else{
jsonResult.put("code",0); //1代表查询成功没有数据
jsonResult.put("msg", "成功无数据");
}
得到的格式是:
{
"code": 1,
"msg": "成功有数据",
"result": [
{
"childArray": [
{
"childClassID": "305085",
"childClassName": "APLLE",
"childClassPath": "root,202080",
"childIntro": "苹果",
"childOrderNum": 10,
"childSummaryImg": ""
},
{
"childClassID": "351754",
"childClassName": "老人机",
"childClassPath": "root,202080",
"childIntro": "老人机",
"childOrderNum": 54,
"childSummaryImg": "/uploadfiles/20150617/1434551442833.png"
},
{
"childClassID": "426938",
"childClassName": "141414141",
"childClassPath": "root,202080",
"childIntro": "哦普波及",
"childOrderNum": 37,
"childSummaryImg": "/uploadfiles/20150525"
}
],
"parentId": "202080",
"parentImg": "/uploadfiles/20150727/1437992760135.jpg",
"parentName": "手机"
},
{
"childArray": [
{
"childClassID": "131011",
"childClassName": "洗护用品",
"childClassPath": "root,265769",
"childIntro": "洗护用品",
"childOrderNum": 52,
"childSummaryImg": "/uploadfiles/20150602/1433231310352.jpg"
}
],
"parentId": "265769",
"parentImg": "/uploadfiles/20150602/1433231243016.jpg",
"parentName": "清洁用品"
},
{
"childArray": [],
"parentId": "268711",
"parentImg": "/uploadfiles/20150721/1437443232128.png",
"parentName": "音乐播放器"
},
{
"childArray": [
{
"childClassID": "861894",
"childClassName": "奶粉辅食",
"childClassPath": "root,276374",
"childIntro": "奶粉",
"childOrderNum": 5,
"childSummaryImg": ""
},
{
"childClassID": "909738",
"childClassName": "尿裤湿巾",
"childClassPath": "root,276374",
"childIntro": "尿裤湿巾",
"childOrderNum": 7,
"childSummaryImg": ""
}
],
"parentId": "276374",
"parentImg": "/uploadfiles/20150727",
"parentName": "母婴产品"
},
{
"childArray": [],
"parentId": "310828",
"parentImg": "/uploadfiles/20150526/1432640562213.png",
"parentName": "滋补保健"
},
{
"childArray": [
{
"childClassID": "390937",
"childClassName": "洗发护发",
"childClassPath": "root,371040",
"childIntro": "洗发、护发",
"childOrderNum": 44,
"childSummaryImg": "/uploadfiles/20150528/1432789048646.jpg"
},
{
"childClassID": "870655",
"childClassName": "个护健康",
"childClassPath": "root,371040",
"childIntro": "个护健康",
"childOrderNum": 49,
"childSummaryImg": "/uploadfiles/20150602/1433229445925.jpg"
},
{
"childClassID": "925963",
"childClassName": "面部护理",
"childClassPath": "root,371040",
"childIntro": "护肤",
"childOrderNum": 45,
"childSummaryImg": "/uploadfiles/20150528/1432789079079.jpg"
},
{
"childClassID": "963136",
"childClassName": "女性护理",
"childClassPath": "root,371040",
"childIntro": "关爱女性健康",
"childOrderNum": 50,
"childSummaryImg": "/uploadfiles/20150602/1433230613153.jpg"
}
],
"parentId": "371040",
"parentImg": "/uploadfiles/20150528/1432788923300.jpg",
"parentName": "美妆个护"
},
{
"childArray": [],
"parentId": "500720",
"parentImg": "/uploadfiles/20150624/1435080067390.jpg",
"parentName": "咖啡"
},
{
"childArray": [
{
"childClassID": "234173",
"childClassName": "保健品",
"childClassPath": "root,611656",
"childIntro": "保健品",
"childOrderNum": 30,
"childSummaryImg": ""
},
{
"childClassID": "705587",
"childClassName": "食品",
"childClassPath": "root,611656",
"childIntro": "卖食品",
"childOrderNum": 39,
"childSummaryImg": "/uploadfiles/20150525/1432543719712.png"
}
],
"parentId": "611656",
"parentImg": "",
"parentName": "营养保健"
},
{
"childArray": [
{
"childClassID": "125989",
"childClassName": "国产牛奶",
"childClassPath": "root,717078",
"childIntro": "二级分类",
"childOrderNum": 28,
"childSummaryImg": ""
}
],
"parentId": "717078",
"parentImg": "",
"parentName": "牛奶"
},
{
"childArray": [],
"parentId": "740664",
"parentImg": "/uploadfiles/20150618/1434629062035.jpg",
"parentName": "饮料"
},
{
"childArray": [],
"parentId": "763126",
"parentImg": "/uploadfiles/20150512/1431416620658.jpg",
"parentName": "进口饮料"
},
{
"childArray": [],
"parentId": "825473",
"parentImg": "/uploadfiles/20150525/1432534088387.jpg",
"parentName": "奶粉"
},
{
"childArray": [
{
"childClassID": "731541",
"childClassName": "zy女靴2",
"childClassPath": "root,867280",
"childIntro": "zy女靴2简介",
"childOrderNum": 12,
"childSummaryImg": "/uploadfiles/20150512/1431409200687.jpg"
}
],
"parentId": "867280",
"parentImg": "/uploadfiles/20150512/1431409144221.jpg",
"parentName": "zy女鞋1"
},
{
"childArray": [
{
"childClassID": "464818",
"childClassName": "坚果蜜饯",
"childClassPath": "root,952781",
"childIntro": "美味可口",
"childOrderNum": 48,
"childSummaryImg": "/uploadfiles/20150528/1432789557650.jpg"
}
],
"parentId": "952781",
"parentImg": "/uploadfiles/20150528/1432789421802.jpg",
"parentName": "休闲零食"
},
{
"childArray": [
{
"childClassID": "791509",
"childClassName": "台式机",
"childClassPath": "root,975656",
"childIntro": "台式机",
"childOrderNum": 35,
"childSummaryImg": "/uploadfiles/20150521/1432199845687.jpg"
},
{
"childClassID": "910103",
"childClassName": "笔记本",
"childClassPath": "root,975656",
"childIntro": "笔记本",
"childOrderNum": 34,
"childSummaryImg": "/uploadfiles/20150521/1432199823348.jpg"
}
],
"parentId": "975656",
"parentImg": "/uploadfiles/20150521/1432199775582.jpg",
"parentName": "电脑"
}
]
}