FastJSON使用例子
FastjsonTest.java
package demo; import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson.serializer.SerializerFeature; public class FastjsonTest {
public static void main(String[] args) {
User user = new User(1, "张三", new Date());
test1(user);
test2(user);
test3(user);
test4(user);
test5(user);
test6(user);
test7(user);
test8();
}
// 对象转成JSON字符串
private static void test1(User user) {
String s = JSON.toJSONString(user);
print(1,s);
} // 对象转成JSON字符串,格式化日期
private static void test2(User user) {
String s = JSON.toJSONString(user, SerializerFeature.WriteDateUseDateFormat);
print(2,s);
} // 对象转成JSON字符串,指定日期格式化
private static void test3(User user) {
String s = JSON.toJSONStringWithDateFormat(user, "yyyy-MM-dd HH:mm:ss.SSS");
print(3,s);
} // 对象转成JSON字符串,美化JSON格式
private static void test4(User user) {
String s = JSON.toJSONStringWithDateFormat(user, "yyyy-MM-dd", SerializerFeature.PrettyFormat);
print(4,s);
} // 对象转成JSON字符串,默认字段值为NULL不获取,可以加上SerializerFeature.WriteMapNullValue获取
private static void test5(User user) {
String s = JSON.toJSONStringWithDateFormat(user, "yyyy-MM-dd", SerializerFeature.PrettyFormat, SerializerFeature.WriteMapNullValue);
print(5,s);
} // JSON字符串转化成对象
private static void test6(User user) {
String s = JSON.toJSONString(user);
print(6,s);
User user2 = JSON.parseObject(s, User.class);
print(6,user2.toString());
} //JSON转成Map<String, Object>
private static void test7(User user){
String json = JSON.toJSONStringWithDateFormat(user, "yyyy-MM-dd");
Map<String, Object> map1 = JSON.parseObject(json, new TypeReference<Map<String, Object>>(){});
print(7, map1.toString());
} //JSON转成List<Map>
private static void test8() {
User user1 = new User(1, "张三", new Date());
User user2 = new User(2, "李四", new Date());
List<User> list1 = new ArrayList<User>();
list1.add(user1);
list1.add(user2);
String json = JSON.toJSONString(list1);
List<Map> maplist = JSON.parseArray(json, Map.class);
print(8, maplist.toString());
} private static void print(int method, String info) {
System.out.print("test" + method + "输出:\r\n" + info + "\r\n");
}
}
User.java
package demo; import java.util.Date;
import java.util.List; public class User {
private Integer id;
private String name;
private Date createDate;
private String password; public User(){
} public User(int id, String name, Date createDate) {
this.id = id;
this.name = name;
this.createDate = createDate;
} public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public Date getCreateDate() {
return createDate;
} public void setCreateDate(Date createDate) {
this.createDate = createDate;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} @Override
public String toString() {
return "user [id="+id+",name="+name+",createDate="+createDate+",password="+password+"]";
} }
运行结果:
test1输出:
{"createDate":1564739625396,"id":1,"name":"张三"}
test2输出:
{"createDate":"2019-08-02 17:53:45","id":1,"name":"张三"}
test3输出:
{"createDate":"2019-08-02 17:53:45.396","id":1,"name":"张三"}
test4输出:
{
"createDate":"2019-08-02",
"id":1,
"name":"张三"
}
test5输出:
{
"createDate":"2019-08-02",
"id":1,
"name":"张三",
"password":null
}
test6输出:
{"createDate":1564739625396,"id":1,"name":"张三"}
test6输出:
user [id=1,name=张三,createDate=Fri Aug 02 17:53:45 CST 2019,password=null]
test7输出:
{id=1, name=张三, createDate=2019-08-02}
test8输出:
[{id=1, name=张三, createDate=1564739625490}, {id=2, name=李四, createDate=1564739625490}]
FastJSON使用例子的更多相关文章
- alibaba架包FastJson使用例子
alibaba的架包FastJson可以对json字符串进行快捷的类型转换.下面是一些各种类型转换的使用例子. 一.下载FastJson的架包,并导入项目中,如下: Maven项目pom.xml配置如 ...
- FastJSON 使用
FastJSON是一个Java语言编写的高性能,功能完善,完全支持http://json.org的标准的JSON库.多了不说了,百度一下一大把. 在此,简单的总结一下自己用过,测试过的方法. 如果使用 ...
- 基于STSdb和fastJson的磁盘/内存缓存
更新 1. 增加了对批量处理的支持,写操作速度提升5倍,读操作提升100倍 2. 增加了对并发的支持 需求 业务系统用的是数据库,数据量大,部分只读或相对稳定业务查询复杂,每次页面加载都要花耗不少时间 ...
- springmvc整合fastjson
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- [转]fastjson常见问题
转自fastjson wiki说明文档:https://github.com/alibaba/fastjson/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 1. ...
- alibaba的FastJson(高性能JSON开发包),fastjson 使用demo
这是关于FastJson的一个使用Demo,在Java环境下验证的 class User{ private int id; private String name; public int getId( ...
- 阿里巴巴Json工具-Fastjson讲解
Fastjson是阿里巴巴公司开源的速度最快的Json和对象转换工具,一个Java语言编写的JSON处理器. 1.遵循http://json.org标准,为其官方网站收录的参考实现之一.2.功能qia ...
- Gson 和 FastJson 性能测试
使用版本: compile 'com.google.code.gson:gson:2.7' compile 'com.alibaba:fastjson:1.2.17' 评测样板为一个People数组, ...
- FastJSON 简介及其Map/JSON/String 互转
在日志解析,前后端数据传输交互中,经常会遇到 String 与 map.json.xml 等格式相互转换与解析的场景,其中 json 基本成为了跨语言.跨前后端的事实上的标准数据交互格式.应该来说各个 ...
随机推荐
- 项目中使用http referer,为了盗取图片资源
项目背景:因为图片的数据是爬取的别人的图片,而且保存的数据仅仅是图片地址链接,为了减少数据存储和服务器压力,但是这就引发一个问题,有的图片地址没有做防盗处理,可以随意的下载使用:但有些图片的服务器做了 ...
- 微服务与Spring Cloud基本概念、Spring Cloud版本命名方式与版本选择
微服务是什么?Spring Cloud是什么?Spring Cloud版本命名方式?Spring Cloud版本选择? 一.微服务是什么 微服务是一种架构风格,是一种将单体应用开发为一组小型服务的方法 ...
- fastadmin中js是如何调用的
想要了解fastadmin中的js是怎么调用的,就应该先了解RequireJs. RequireJs是模块化工具,每一个我们自己的js文件或者库都可以看成是一个模块,按需引入.写法如下: <sc ...
- 跑健壮性Monkey,出现一次Crash全过程-日志分析-董浩-Dotest
最近带着学生做的某个项目,跑健壮性Monkey,出现一次Crash全过程-日志分析: 准备:搭建adb环境.安装实际测试包:开始: Monkey命令: 1 2 3 4 5 adb shell monk ...
- RabbitMQ学习笔记(五、RabbitMQ集群)
目录: RabbitMQ集群 镜像队列 RabbitMQ服务日志 RabbitMQ分布式部署 高可用集群 RabbitMQ集群: 1.集群中组件的状态 首先MQ一定要是一个高可用的中间件所以集群肯定是 ...
- mysql中group by 使用
问题描述 我现在需要查询表test,里面需要安装字段a 进行分组.分组之后还有按照b字段最大的.还要查询出字段c. 我先在使用的数据库是mysql8.0 解决 需注意: group by 分组的时候是 ...
- Win32 程序开发:创建一个应用程序窗口
一.创建一个应用程序窗口 代码如下: // 头文件 #include <windows.h> // 全局变量 WCHAR g_lpszClassName[] = L"CLASSN ...
- 第04组 Beta冲刺(1/5)
队名:new game 组长博客:戳 作业博客:戳 组员情况 鲍子涵(队长) 过去两天完成了哪些任务 验收游戏素材 学习Unity 2D Animation系统 接下来的计划 制作游戏需要的人物动画 ...
- 基于Docker的Consul服务发现集群搭建
在去年的.NET Core微服务系列文章中,初步学习了一下Consul服务发现,总结了两篇文章.本次基于Docker部署的方式,以一个Demo示例来搭建一个Consul的示例集群,最后给出一个HA的架 ...
- 分析Runtime的属性Property
一.介绍 在OC中我们可以给任意的一个类以@property的格式声明属性,当然对于这个属性也会采用某一些属性关键字进行修饰,那么属性的真正的面目是啥样子的呢?其实,runtime源码中可以看到,pr ...