1、内容介绍
2、JSON语法规则
如:
<script type="text/javascript">
var json= [
{
"empno": 7369,
"ename": "李宁",
"job": "软件工程师",
"hiredate": "2017-05-12",
"salary": 13000,
"dname": "研发部"
},
{
"empno": 7499,
"ename": "王乐",
"job": "客户经理",
"hiredate": "2017-04-22",
"salary": 10000,
"dname": "市场部",
"customers": [
{
"cname": "李东"
},
{
"cname": "刘楠"
}
]
}
];
//在浏览器控制台中对json内容进行输出
console.log(json);
</script>
3、JSON与字符串相互转化
例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>字符串转JSON</title>
</head>
<body>
<script type="text/javascript">
var str = "{\"class_name\": \"五年级三班\" }";
var json = JSON.parse(str);
console.log(str)
console.log(json)
document.write("班级:" + json.class_name)
</script>
</body>
</html>
4、JSON与Java交互
使用FastJSON进行序列化和反序列化:
①bean类:
public class Employee {
private Integer empno;
private String ename;
private String job;
@JSONField(name = "hiredate",format="yyyy-MM-dd HH:mm:ss")
private Date hdate;
private Float salary;
@JSONField(serialize = false)
private String dname;
public Integer getEmpno() {
return empno;
}
public void setEmpno(Integer empno) {
this.empno = empno;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
public Date getHdate() {
return hdate;
}
public void setHdate(Date hdate) {
this.hdate = hdate;
}
public Float getSalary() {
return salary;
}
public void setSalary(Float salary) {
this.salary = salary;
}
public String getDname() {
return dname;
}
public void setDname(String dname) {
this.dname = dname;
}
}
②测试代码:
public static void main(String[] args) {
// TODO Auto-generated method stub
Employee employ = new Employee();
employ.setEmpno(888);
employ.setEname("王晓东");
employ.setJob("客户经理");
employ.setSalary(100000F);
employ.setDname("市场部");
Calendar c = Calendar.getInstance();
c.set(2019, 0,30,0,0,0);
employ.setHdate(c.getTime());
//FastJSON中提供了JSON对象,完成对象与JSON字符串的相互转化
String json = JSON.toJSONString(employ);
System.out.println(json);
//反序列化
Employee emp = JSON.parseObject(json,Employee.class);
System.out.println(emp.getEname());
}