JSON字符串解析前端+后端

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xuxin132133/article/details/84315564

首先引入maven依赖:

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.4</version>
</dependency>

一、java后端对json数据处理

1、JSON字符串转化为实体对象

        String a="{\"address\":\"南京\",\"age\":20,\"name\":\"张三\"}";

        //转化为Object对象    
        //Object o=JSON.parse(a);
        Person person=JSON.parseObject(a,Person.class);
        System.out.println(p);

        output: Person{id=null, name='张三', age=20, address='南京'}

2、在json对象中获取json数组

           JSONArray jsonArray=JSON.parseObject(a).getJSONArray("address");

3、json数组获取json对象

                JSONObject jsonObject=JSONArray.parseObject("station");

4、实体类转化为json对象

        Person p=new Person();
        p.setName("张三");
        p.setAddress("南京");
        p.setAge(20);
        String s=JSON.toJSONString(p);
        System.out.println(s);

output:{"address":"南京","age":20,"name":"张三"}

二、js中对json数据的处理

json字符串转换为json对象:

     <script language="JavaScript">
     
        //json字符串
        var  a="{'address':'南京','age':20,'name':'张三'}";

        //json字符串转换为json对象
        var object=eval('('+a+')');
        alert(object.age);
        alert(object.address);
    </script>

json对象转换为json字符串

      <script language="JavaScript">
        //json对象
        var  b={'address':'南京','age':20,'name':'张三'};
        //json对象转换为字符串
        var str=JSON.stringify(b)
        alert(str)
       </script>

遍历json对象数组

    <script language="JavaScript">
        var packJson = [{"name":"phpernote", "password":"111"},{"name":"phpernote", "password":"111"},{"name":"phpernote", "password":"111"}];

        for(var i=0;i<packJson.length;i++){
            alert(packJson[i].name+"  "+packJson[i].password)
        }
//或者用$.each函数遍历
          $.each(packJson,function (idx,obj) {
                alert(idx+  "  "+obj.name+  "  "+obj.password)
        })

    </script>

ajax获取数据,js解析json数组文件(这里做数组演示):

  <script language="JavaScript">

        var phone=['123456789','123456789','123456789','123456789','123456789','123456789','123456789','123456789','123456789','123456789',]

      /* var phone=[];*/
        //ajax异步请求,获取数据
        $(function () {
            $.ajax({
                data:{"phoneNums":"12"//号码数量
                },
                url:'自定义对应自己controller中定义的路径',
                datatype:'json',
                success:function (result) {
                },
                error:function (error) {

                }
            })
            var strhtml="";
            if(phone.length>0){
                for(var i=0;i<phone.length;i++){

                    if(i%2===0){
                        strhtml+="<tr>"
                    }
                    var length=phone[i].length-6;
                    strhtml+="<td>"+phone[i].substr(0,9-length)+"<span>"+phone[i].substring(9-length,10)+"</span>"
                    if(i%2===1){
                        strhtml+="</tr>"
                    }
                }
            }else {

                strhtml+="<tr><td colspan='2'>暂时没有数据</td></tr>"
            }
            $("table").append(strhtml)

        })
    </script>

猜你喜欢

转载自blog.csdn.net/xuxin132133/article/details/84315564
今日推荐