json 字符串 简单应用

web开发中传输对象经常使用json字符串,表单提交,ajax 请求以及后台返回的常常都是json字符,可以利用别人封装好的json字符操作方法,怕导包麻烦也可以自定义一些方法,只要满足自己需求即可,下面是我在项目中用到的一个很简单的json操作方法

1.先定义了一个要传输的 对象

//玩家部队对象
function army(a_seq,army_id,for_id){
  this.a_seq = a_seq;
  this.army_id = army_id;
  this.for_id = for_id;
  
  this.getSeq=function(){
         return this.a_seq;
   }; 
  this.getArmy_id=function(){
         return this.army_id;
   };
  this.getfor_id=function(){
         return this.for_id;
  };
  this.setfor_id=function(f_id){
       this.for_id = f_id;
  };
}

2.ajax提交时 转化为json对象

//将选择的部队转化成jsonArray
function toJSONArray(obj){
  var jsonArray = new Array();
  for(var i = 0;i<obj.length;i++){ 
   //按照json字符串的格式 将对象拼接好
    var jsonObj ="{/"army_id/":/""+obj[i].getArmy_id()+"/" ,"+"/"army_type/":/""+army_type+"/"

,"+"/"for_id/":/""+obj[i].getfor_id()+"/"}"
     jsonArray.push(jsonObj);
  }

   //保存成 json array
  var ja ="{/"armyArray/":["+jsonArray.toString()+"]}";
  return ja;
}


3. 后台直接利用 net.sf.json.JSONArray 包提供的方法解析就可以了

     // 玩家此次攻击派出的部队 ,由页面得到的json对象
    String armys = webInput.getParameter("armys");
    JSONObject jb = JSONObject.fromObject(armys);
    JSONArray array = jb.getJSONArray("armyArray"); //得到jsonArray
    Iterator<JSONObject> iter = array.iterator();
       
    List<String> armyTypeList = new ArrayList<String>();
    while (iter.hasNext()) {
        JSONObject jsobj = iter.next();
        String army_id = jsobj.getString("army_id");
        String army_type =jsobj.getString("army_type");
        rmyTypeList.add(army_type); //这样就可以还原成 原来的对象了
           
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值