fastjson 1.2.52 版本发布,Java 实现的 JSON 解析库

局长
 局长
发布于 2018年11月19日
收藏 9

fastjson 1.2.52 版本发布了,这又是一个功能增强,以及 bug 修复的版本。主要是增强对 JSONPath 的支持。

Issues

  1. 增强JSONPath的支持,增强新的JSONPath.extract API,根据path按需解析JSON数据,大幅提升JSONPath的性能,可用于大数据分析场景。https://github.com/alibaba/fastjson/wiki/JSONPath_Extract

  2. SerializeWriter支持配置bufLocal大小,并改进缓存buf的算法。这是根据 @江南白衣 的建议做的改进。 https://github.com/alibaba/fastjson/wiki/Config_serializer_buffer_threshold_cn

  3. 修复反序列化是打开Feature.DisableCircularReferenceDetect时,某些场景会抛空指针的问题

  4. 增强JSONFeild.format对日期格式的支持,自动识别不带单引号的T格式 #2103

  5. 增强对joda日期库的支持

  6. JSONPath.contains支持对List

  7. 增强对guava的支持,支持HashMultimap #2132

相关链接

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:fastjson 1.2.52 版本发布,Java 实现的 JSON 解析库
加载中

精彩评论

开源中国首席技术官
开源中国首席技术官
很好,我选 Jackson
w
w11
打着高性能的旗号, 不知道多少程序员曾经被这个库坑过!
w
wailouci
bug太多,扩展性太差

最新评论(19

时光很匆忙
时光很匆忙

引用来自“风声取笑我”的评论

我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。

引用来自“郭文龙”的评论

也许数据本来就是\r 或者\n,Jackson、Gson如实解析了,而fastjson自作主张处理了一下!
有些2B前端框架或工具在输入框里容忍换行符,处理不当就会有这样问题。

引用来自“风声取笑我”的评论

你想多了,并没有你说的情况

引用来自“郭文龙”的评论

我更偏向你想得太少了。

换行方式有三种,你看到的不一定就是真实情况。

引用来自“风声取笑我”的评论

我调试的时候会看不见?就是简单的一个空格而已,并且全文不止这一个空格,出错的位置独独那一个

引用来自“郭文龙”的评论

就当你说的是真的吧,反正别人无法求证

引用来自“孔乙己的春天”的评论

动弹已经有人提过,gson在很长的文本情况下解析会出异常,当然,我也无法求证,但符合我经历,更愿意相信。还有,我肯定比你清楚我自己经历的事,不需要你信不信,你不信是你的问题,事实还是最大的。
多长算长呢?我们有个客户端接口交换json数据每次都是2M起,长的10M以上,没遇见过解析问题。
斯内克brien
斯内克brien

引用来自“风声取笑我”的评论

我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。

引用来自“郭文龙”的评论

也许数据本来就是\r 或者\n,Jackson、Gson如实解析了,而fastjson自作主张处理了一下!
有些2B前端框架或工具在输入框里容忍换行符,处理不当就会有这样问题。

引用来自“风声取笑我”的评论

你想多了,并没有你说的情况

引用来自“郭文龙”的评论

我更偏向你想得太少了。

换行方式有三种,你看到的不一定就是真实情况。

引用来自“风声取笑我”的评论

我调试的时候会看不见?就是简单的一个空格而已,并且全文不止这一个空格,出错的位置独独那一个

引用来自“郭文龙”的评论

就当你说的是真的吧,反正别人无法求证
动弹已经有人提过,gson在很长的文本情况下解析会出异常,当然,我也无法求证,但符合我经历,更愿意相信。还有,我肯定比你清楚我自己经历的事,不需要你信不信,你不信是你的问题,事实还是最大的。
时光很匆忙
时光很匆忙

引用来自“风声取笑我”的评论

我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。

引用来自“郭文龙”的评论

也许数据本来就是\r 或者\n,Jackson、Gson如实解析了,而fastjson自作主张处理了一下!
有些2B前端框架或工具在输入框里容忍换行符,处理不当就会有这样问题。

引用来自“风声取笑我”的评论

你想多了,并没有你说的情况

引用来自“郭文龙”的评论

我更偏向你想得太少了。

换行方式有三种,你看到的不一定就是真实情况。

引用来自“风声取笑我”的评论

我调试的时候会看不见?就是简单的一个空格而已,并且全文不止这一个空格,出错的位置独独那一个
就当你说的是真的吧,反正别人无法求证
斯内克brien
斯内克brien

引用来自“风声取笑我”的评论

我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。

引用来自“郭文龙”的评论

也许数据本来就是\r 或者\n,Jackson、Gson如实解析了,而fastjson自作主张处理了一下!
有些2B前端框架或工具在输入框里容忍换行符,处理不当就会有这样问题。

引用来自“风声取笑我”的评论

你想多了,并没有你说的情况

引用来自“郭文龙”的评论

我更偏向你想得太少了。

换行方式有三种,你看到的不一定就是真实情况。
我调试的时候会看不见?就是简单的一个空格而已,并且全文不止这一个空格,出错的位置独独那一个
时光很匆忙
时光很匆忙

引用来自“风声取笑我”的评论

我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。

引用来自“郭文龙”的评论

也许数据本来就是\r 或者\n,Jackson、Gson如实解析了,而fastjson自作主张处理了一下!
有些2B前端框架或工具在输入框里容忍换行符,处理不当就会有这样问题。

引用来自“风声取笑我”的评论

你想多了,并没有你说的情况
我更偏向你想得太少了。

换行方式有三种,你看到的不一定就是真实情况。
斯内克brien
斯内克brien

引用来自“风声取笑我”的评论

我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。

引用来自“郭文龙”的评论

也许数据本来就是\r 或者\n,Jackson、Gson如实解析了,而fastjson自作主张处理了一下!
有些2B前端框架或工具在输入框里容忍换行符,处理不当就会有这样问题。
你想多了,并没有你说的情况
时光很匆忙
时光很匆忙

引用来自“风声取笑我”的评论

我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。
贴个楼下的回复:曾经踩了个大坑:Java对象-->JSON内容,Java对象字符串属性中的Tab制表符字符,在转换为JSON内容后直接为\t字符串。导致后面业务逻辑BUG。

看来国产框架自作聪明的倾向很明显,现象很普遍!
时光很匆忙
时光很匆忙

引用来自“风声取笑我”的评论

我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。
也许数据本来就是\r 或者\n,Jackson、Gson如实解析了,而fastjson自作主张处理了一下!
有些2B前端框架或工具在输入框里容忍换行符,处理不当就会有这样问题。
开源中国首席技术官
开源中国首席技术官
很好,我选 Jackson
斯内克brien
斯内克brien
我被Jackson或是gson坑过,记不清是哪个了,就是前端传过来很长很长json格式字符串,转成json对象的时候,把其中某个空格识别为了换行,导致报出语法不正确的异常。换fastjson一点事没有,正常使用。
返回顶部
顶部