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(name = "hiredate" , format="yyyy-MM-dd")
===========java转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());
}
}
}