1.什么是JSON
JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
2.JSON语法
{“属性1” : ”值1” , ”属性2” : ”值2”}
属性值数据类型:
数值 : 2 2.3 -5
字符串:”jack”
数组 : []
boolean: true/false
对象 : {}
3.页面处理json数据
<script type="text/javascript">
    //数值和字符串类型
    var json = {"name":"张珊","age": 18 ,"sex":"女"};
    //alert(json.name);
    //alert(json.age);
    //alert(json.sex);
    //对象类型
    var json2 = {"person" : {"name":"张珊","age": 18 ,"sex":"女"} }
    //alert(json2.person.name);
    //数组类型
    var json3 = {"list" : [{"name":"张珊","age": 18 ,"sex":"女"},{"name":"李思","age": 20 ,"sex":"男"}] }
    alert(json3.list[1].name);
</script>
4.服务器如何把Java数据转成json格式数据
4.1页面接收json对象
<body>
<button>点击获去json数据(对象)</button>
<button>点击获去json数据(集合)</button>
</body>
<script type="text/javascript">
    $(function(){
        $("button").eq(0).click(function(){
            //点击获去json数据(对象)
            $.ajax({
                "url"          : "/JQuery_demo2/json.do",
                "type"         : "GET",
                "success"    : function(data){
                    //alert(data);
                    console.log(data)
                    //alert(data.id);
                },
                "dataType"    :  "json"
            })
        })
        $("button").eq(1).click(function(){
            //点击获去json数据(集合)
            $.ajax({
                "url"          : "/JQuery_demo2/json.do",
                "type"         : "POST",
                "success"    : function(data){
                    console.log(data)
                },
                "dataType"    :  "json"
            })
        })
    })
</script>
4.2 Java对象转json
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //模拟对象数据  
        User user = new User(1001,"努努","男",22);
        //把对象转成json
        //需要第三方插件  jar包
        //使用JSONObject         把Java对象转成了 json对象        推荐使用
        JSONObject json = JSONObject.fromObject(user);
        //使用JSONArray         把Java对象转成了 json数组
        //JSONArray json = JSONArray.fromObject(user);
        PrintWriter out = response.getWriter();
        out.write(json.toString());
        out.close();
    }
4.3集合转json
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //模拟集合数据
        ArrayList<User> list = new ArrayList<User>();
        list.add(new User(1001,"努努","男",22));
        list.add(new User(1002,"璐璐","女",14));
        list.add(new User(1003,"萌萌","女",19));
        //把集合转成json
        //使用JSONArray         把集合转成了 json数组
        JSONArray json = JSONArray.fromObject(list);
        response.setContentType("appliction/json;charset=utf-8"); 
        PrintWriter out = response.getWriter();
        out.write(json.toString());
        out.close();
    }
来源:https://www.cnblogs.com/jjqq0921/p/10194499.html