json的简单使用笔记记录

目录

 

11- json

12- json-lib


又是一天学习的开始,玩了几天了,今天复习一哈前几天看的内容,针对json简单的学习记录

具体内容参考视频学习:https://edu.aliyun.com/roadmap/java

11- json

what is it?

它是 js 提供的一种数据交换格式;

语法

  • { } :是对象;

  • 属性名必须用双引号括起来;

  • 属性值:

    • null

    • 数值

    • 字符串

    • 数组:【】

    • Boolean:true & false

var person = {
    "name": "JasonCH",
    "age": 19,
    "sex": "male",
    "addr": "xxxxxxxx"
};
// 其中 对 eval的函数的使用 对 str 进行解析 为 person对象;

通过 servlet 响应json数据:

        String json = "{\"name\":\"JasonCH\",\"age\":19}";
        System.out.println(json);
        response.getWriter().print(json);//

x.jsp 文件内容如下:

<%--
  Created by IntelliJ IDEA.
  User: Lenovo
  Date: 2021/6/15
  Time: 22:38
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>json</title>
    <script type="text/javascript">
        function createXMLHttpRequest(){//  创建异步对象
            try {
                return new XMLHttpRequest();
            }catch (e) {
                try {
                    return new ActiveXObject("Msxml2.XMLHTTP");
                }catch (e) {
                    try {
                        return new ActiveXObject("Microsoft.XMLHTTP");
                    }catch (e) {
                        alert("error!!!!!!!!!!!!!!");
                    }
                }
            }
        }
        window.onload = function () {
            var btn = document.getElementById("btn");
            btn.onclick = function () {
                // 四部操作:ajax
                var xmlHttp = createXMLHttpRequest();
                xmlHttp.open("get","<c:url value="/jsonServlet"/>",true);
                xmlHttp.send(null);// none;
                xmlHttp.onreadystatechange = function () {
                    if(xmlHttp.readyState === 4 && xmlHttp.status===200){
                        var jsonData = xmlHttp.responseText;
                        var person = eval("("+jsonData+")");
                        var s = person.name+", "+person.age;
                        document.getElementById("jsonShow").innerHTML = s;
                    }
                };
            };
        }
    </script>
</head>
<body>
    <button id="btn">click here to show the json data</button>
    <h1 id="jsonShow"></h1>
</body>
</html>
​

 

 

json与xml 的比较

  • 可读性,xml 较好;

  • 解析 难度:json本身就是js对象,更容易解析;

  • 流行度:在ajax邻域,更多用json;

12- json-lib

  • 可以把javabean 对象 转换成 json 串;

  • jar包;

  • 核心类:

    • JSONObject --> Map -> toString ( ) ;

      • JSONObject.fromObject ( person );

    • JSONArray --> List -> toString ( ) ; 和list 用法差不多噢;

package JSON;
​
import JavaBean.city_province.city;
import net.sf.json.JSONObject;
import org.junit.Test;
​
public class jsonToolsLearn {
    @Test
    public void func(){
        JSONObject map = new JSONObject();// 这里注意可能会出现版本问题报错;
        map.put("name","Jason");
        map.put("age",19);
        System.out.println(map.toString());
        city ct = new city("Beijing","description");
        JSONObject map1 = JSONObject.fromObject(ct);
        System.out.println(map1);
    }
}
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

J.CH.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值