/**
* <pre>
* TODO:测试阿里巴巴工具类 fastjson
* </pre>
*
* @author zhangjunchao
* @date 2019/7/8
*/
public class TestFastJson {
// 实体(对象)转为Json
@Test
public void test() {
String name = "张三";
int age = 18;
Userinfo info = new Userinfo(name, age);
// 转换方法
String str_json = JSON.toJSONString(info);
System.out.println("实体转化为Json" + str_json);
}
// list转Json
@Test
public void test2() {
List<Userinfo> list = new ArrayList<>();
Userinfo userinfo1 = new Userinfo("张三", 15);
Userinfo userinfo2 = new Userinfo("李四", 16);
list.add(userinfo1);
list.add(userinfo2);
// 清除list元素
list.remove(userinfo1);
// 转换方法
String json = JSON.toJSONString(list, true);
System.out.println("List集合转json格式字符串 :" + json);
}
// 字符数组string转化为JSonArray
@Test
public void test3() {
String st = "[{\"name\":\"Tim\",\"age\":25,\"sex\":\"male\"},{\"name\":\"Tom\",\"age\":28,\"sex\":\"male\"}]";
// 转换方法
JSONArray tableData = JSONArray.parseArray(st);
System.out.println(tableData);
}
// 复杂数据类型
@Test
public void test4() {
// map集合
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("username", "zhangsan");
map.put("age", 24);
map.put("sex", "男");
// list集合
List<String> list = new ArrayList<String>();
list.add("爬山");
list.add("骑车");
list.add("旅游");
// 把list集合放入map中
map.put("hobby", list);
// 转换方法
String jsonString = JSON.toJSONString(map);
System.out.println("复杂数据类型:" + jsonString);
}
// string转换为实体(对象)
@Test
public void test5() {
String st = "{name:\"张三\",age:18}";
// 转换方法
Userinfo userInfo = JSON.parseObject(st, Userinfo.class);
System.out.println("姓名是:" + userInfo.getName() + ", 年龄是:" + userInfo.getAge());
}
// 格式化日期
@Test
public void test6() {
Date date = new Date();
// 13位时间戳
System.out.println("输出毫秒值:" + JSON.toJSONString(date));
// 默认格式(常用)为:"2019-07-08 17:52:04"
String dateString = JSON.toJSONString(date, SerializerFeature.WriteDateUseDateFormat);
System.out.println("默认格式为:" + dateString);
// 自定义日期:"2019-07-08 17-52-53 521"
String dateStringFormat = JSON.toJSONStringWithDateFormat(date, "yyyy-MM-dd HH-mm-ss SSS",
SerializerFeature.WriteDateUseDateFormat);
System.out.println("自定义日期:" + dateStringFormat);
String format3 = LocalDateTime
.now()
.format(DateTimeFormatter
.ofPattern("yyyy-MM-dd HH:mm:ss"));
System.out.println(format3);
// 此方法可以格式化非对象
String format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
System.out.println(format);
}
}
阿里巴巴-FastJSON几种常用方法
最新推荐文章于 2023-11-23 16:47:34 发布