Java 的fastjson1.1.32有哪些新功能

这篇文章主要介绍“Java 的fastjson1.1.32有哪些新功能”,在日常操作中,相信很多人在Java 的fastjson1.1.32有哪些新功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java 的fastjson1.1.32有哪些新功能”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

java语言最快的json库fastjson发布1.1.32版本,这个版本增加了stream  api,支持处理超大json文本

Bug

  • [FASTJSON-208] – 反序列化无setter集合属性返回为null时空指针异常

  • [FASTJSON-209] –  JSONField(serialize=false)配置在字段上不起作用

  • [FASTJSON-211] – ThrowableDeserializer处理null出错

Improvement

  • [FASTJSON-210] – 支持流式反序列化

  • [FASTJSON-212] – parser自动识别更多日期格式

当需要处理超大JSON文本时,需要Stream  API,在fastjson-1.1.32版本中开始提供Stream API。

#  序列化

##  例1

JSONWriter writer = new JSONWriter(new FileWriter("/tmp/huge.json"));  writer.startArray();  for (int i = 0; i < 1000 * 1000; ++i) {        writer.writeValue(new VO());  }  writer.endArray();  writer.close();

## 例2

JSONWriter writer = new JSONWriter(new FileWriter("/tmp/huge.json"));   writer.startObject();   for (int i = 0; i < 1000 * 1000; ++i) {         writer.writeKey("x" + i);         writer.writeValue(new VO());   }   writer.endObject();   writer.close();

# 反序列化

## 例3  

JSONReader reader = new JSONReader(new FileReader("/tmp/huge.json")); reader.startArray(); while(reader.hasNext()) {       VO vo = reader.readObject(VO.class);       // handle vo ... } reader.endArray(); reader.close();

## 例4

  1. JSONReader reader = new JSONReader(new FileReader("/tmp/huge.json"));    

  2.  

  3. reader.startObject();    

  4.    

  5. while(reader.hasNext()) {  

  6.    

  7.       String key = reader.readString();    

  8.  

  9.       VO vo = reader.readObject(VO.class);    

  10.  

  11.       // handle vo ...  

  12.  

  13. }    

  14.  

  15. reader.endObject();    

  16.  

  17. reader.close();    

到此,关于“Java 的fastjson1.1.32有哪些新功能”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/230698.html

(0)
上一篇 2022年1月15日
下一篇 2022年1月15日

相关推荐

发表回复

登录后才能评论