fastjson.jar是阿里开发的一款专门用于Java开发的包,可以方便的实现json对象与JavaBean对象的转换,实现JavaBean对象与json字符串的转换,实现json对象与json字符串的转换。实现json的转换方法很多,最后的实现结果都是一样的。
fastjson 三个主要的类:
1.JSONObject 代表 json 对象。
2.JSONObject实现了Map接口, JSONObject底层操作是由Map实现的。
3.是JSONArray 代表 json 对象数组,内部是有List接口中的方法来完成操作的。
仔细观察这些方法,主要是实现json对象,json对象数组,javabean对象,json字符串之间的相互转化
1.首先导入fastjson的依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.61</version>
</dependency>
2.其实我们要使用什么导入包之后一点就有了,一看就明白,是不是很简单。
3.新建一个FasJsonDemo类测试
package com.wlm.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.wlm.pojo.User;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
@RestController
public class JSONController {
@RequestMapping("/fastjson")
public String myTest() {
//1.创建用户对象
User user = new User(1,"咸鱼_翻身","男");
//2.将JAVA对象转换JSON字符串
String str = JSON.toJSONString(user);
//3.将JSON字符串转换成Java对象
User user1 = JSON.parseObject(str,User.class);
//4.将JAVA对象转换成JSON对象
JSONObject jsonObject = (JSONObject) JSON.toJSON(user);
//5.JSON对象转Java对象
User user2 = JSON.toJavaObject(jsonObject,User.class);
//6.解析时间对象
System.out.println(JSON.toJSONStringWithDateFormat(new Date(),"yyyy-MM-dd HH:mm:ss"));
//6.其实我们可以看见,这个相当于把我们以前做的打包好了给我们用
return JSON.toJSONString(user);
}
}