加入收藏 | 设为首页 | 会员中心 | 我要投稿 淮安站长网 (https://www.0517zz.com.cn/)- 数据开发、人脸识别、智能机器人、图像处理、语音技术!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

计算机能否代替人类成为先知?

发布时间:2021-01-30 10:36:28 所属栏目:外闻 来源:互联网
导读:前言 大家好,又双叒叕见面了,我是天天放大家鸽子的蛮三刀。 在被大家取关之前,我立下一个远大的理想,一定要在这周更新文章。现在看来,flag有用了。。。 本篇文章是我这一个多月来帮助组内废弃fastjson框架的总结,我们将大部分Java仓库从fastjson迁移至

前言

大家好,又双叒叕见面了,我是天天放大家鸽子的蛮三刀。

在被大家取关之前,我立下一个“远大的理想”,一定要在这周更新文章。现在看来,flag有用了。。。

本篇文章是我这一个多月来帮助组内废弃fastjson框架的总结,我们将大部分Java仓库从fastjson迁移至了Gson。

这么做的主要的原因是公司受够了fastjson频繁的安全漏洞问题,每一次出现漏洞都要推一次全公司的fastjson强制版本升级,很令公司头疼。

文章的前半部分,我会简单分析各种json解析框架的优劣,并给出企业级项目迁移json框架的几种解决方案。

在文章的后半部分,我会结合这一个月的经验,总结下Gson的使用问题,以及fastjson迁移到Gson踩过的深坑。

文章目录:

  • 为何要放弃fastjson?
  • fastjson替代方案
    • 三种json框架的特点
    • 性能对比
    • 最终选择方案
  • 替换依赖时的注意事项
    • 谨慎,谨慎,再谨慎
    • 做好开发团队和测试团队的沟通
    • 做好回归/接口测试
    • 考虑迁移前后的性能差异
  • 使用Gson替换fastjson
    • Json反序列化
    • 范型处理
    • List/Map写入
    • 驼峰与下划线转换
  • 迁移常见问题踩坑
    • Date序列化方式不同
    • SpringBoot异常
    • Swagger异常
    • @Mapping JsonObject作为入参异常

注意:是否使用fastjson是近年来一个争议性很大的话题,本文无意讨论框架选型的对错,只关注迁移这件事中遇到的问题进行反思和思考。大家如果有想发表的看法,可以在评论区 理 性 讨论。

为何要放弃fastjson?

究其原因,是fastjson漏洞频发,导致了公司内部需要频繁的督促各业务线升级fastjson版本,来防止安全问题。

fastjson在2020年频繁暴露安全漏洞,此漏洞可以绕过autoType开关来实现反序列化远程代码执行并获取服务器访问权限。

从2019年7月份发布的v1.2.59一直到2020年6月份发布的 v1.2.71 ,每个版本的升级中都有关于AutoType的升级,涉及13个正式版本。

fastjson中与AutoType相关的版本历史:

(编辑:淮安站长网)

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

    热点阅读