JSON入门

内容纲要

JSON介绍

  • JavaScript Object Notation(JavaScript对象表示法)
  • JSON是轻量级的文本数据交换格式
  • JSON独立于语言,具有自我描述性,更易理解

    JSON 语法规则

  • 数据由键(key)/值(value)描述,由逗号分隔
  • 大括号代表一个完整的对象,拥有多个键/值对
  • 中括号保存数组,多个对象之间使用逗号分隔

    JSON与字符串互相转换

  • JSON.parse()方法将字符串转换为JSON对象
  • JSON.stringify()方法将JSON对象转换为字符串

    JSON与Java交互

  • Java的JSON工具包还有FastJson、Jackson、 Gson、 Json-lib...
  • FastJson是阿里巴巴著名的JSON序列化与反序列工具包
  • FastJson国内拥有大量使用者,拥有AP|简单,效率高等优点

    注解

    //@JSONField(format="yyyy-MM-dd HH:mm:ss SSS")
    @JSONField(name = "hiredate" , format="yyyy-MM-dd")  //显示key的值
    ===========java转json================
    //FastJSON中提供了JSON对象,完成对象与JSON字符串的互相转换
    String json = JSON.toJSONString(employee);
    ===========json转java================
    Employee emp = JSON.parseObject(json, Employee.class);
    ============数组=====================
    public class FastJsonSample2 {
    public static void main(String[] args) {
        List emplist = new ArrayList();
        for (int i = 1 ; i <= 100 ; i++) {
            Employee employee = new Employee();
            employee.setEmpno(4488 + i);
            employee.setEname("员工" + i);
            emplist.add(employee);
        }
        String json = JSON.toJSONString(emplist);
        System.out.println(json);
        List<Employee> emps = JSON.parseArray(json , Employee.class);
        for(Employee e : emps) {
            System.out.println(e.getEmpno() + ":" + e.getEname());
        }
    }
    }
THE END
分享
二维码
< <上一篇
下一篇>>