加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

fastjson 使用

发布时间:2020-12-16 19:40:05 所属栏目:百科 来源:网络整理
导读:原文地址http://jingyan.baidu.com/article/c74d6000672e450f6b595d53.html 阿里的fastjson包对对象进行 json的转化与解析。测试了下效率比net.sf.json和spring mvc自带的转换效率高得多! 常用类型 类型一:JavaBean 类型二:ListJavaBean 类型三:ListStrin

原文地址http://jingyan.baidu.com/article/c74d6000672e450f6b595d53.html

阿里的fastjson包对对象进行 json的转化与解析。测试了下效率比net.sf.json和spring mvc自带的转换效率高得多!

常用类型

类型一:JavaBean

类型二:List<JavaBean>

类型三:List<String>

类型四:List<Map<String,Object>>

将上面的四种数据对象转换成json字符串的方法都是一样的

String jsonString = JSON.toJSONString(obj);

1.)将json字符串转化成JavaBean对象

Person person = new Person("1","fastjson",1);
//序列化,这里将javabean转化成json字符串
String jsonString = JSON.toJSONString(person);
//反序列化,这里将json字符串转化成javabean对象,person =JSON.parSEObject(jsonString,Person.class);

2.)将json字符串转化成List<JavaBean>对象

Person person1 = new Person("1","fastjson1",1);
Person person2 = new Person("2","fastjson2",2);
List<Person> persons = new ArrayList<Person>();
persons.add(person1);
persons.add(person2);
//序列化,转换为json字符串
String jsonString = JSON.toJSONString(persons);
System.out.println("json字符串:"+jsonString);
//反序列化,将json字符串转换为list
List<Person> persons2 = JSON.parseArray(jsonString,Person.class);

3.)将json字符串转化成List<String>对象

List<String> list = new ArrayList<String>();
list.add("fastjson1");
list.add("fastjson2");
list.add("fastjson3");
String jsonString = JSON.toJSONString(list);
System.out.println("json字符串:"+jsonString);
//反序列化
List<String> list2 = JSON.parSEObject(jsonString,new TypeReference<List<String>>(){}); 


4.)将json字符串转化成List<Map<String,Object>>对象

Map<String,Object> map = new HashMap<String,Object>();
map.put("key1","value1");
map.put("key2","value2");
Map<String,Object> map2 = new HashMap<String,Object>();
map2.put("key1",1);
map2.put("key2",2);
List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
list.add(map);
list.add(map2);
String jsonString = JSON.toJSONString(list);
System.out.println("json字符串:"+jsonString);
//反序列化
List<Map<String,Object>> list2 = JSON.parSEObject(jsonString,new TypeReference<List<Map<String,Object>>>(){});

5.)日期格式化

 Date date=new Date();   
  //输出毫秒值 
  System.out.println(JSON.toJSONString(date)); 
  //默认格式为yyyy-MM-dd HH:mm:ss   
  System.out.println(JSON.toJSONString(date,SerializerFeature.WriteDateUseDateFormat)); 
  //根据自定义格式输出日期,这个格式不能反序列化
  System.out.println(JSON.toJSONStringWithDateFormat(date,"yyyy-MM-dd",SerializerFeature.WriteDateUseDateFormat)); 

为了大家学习使用的方便,将测试java项目打包上传到了百度网盘,下载地址

pan.baidu.com/s/1jGskEb0

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读