相信昨天,很多小伙伴都因为Log4j2的史诗级漏洞忙翻了吧?

看到群里还有小伙伴说公司里还特别建了800+人的群在处理...

好在很快就有了缓解措施和解决方案。同时,log4j2官方也是速度影响发布了最新的修复版本。各应用方也可以执行较为稳定的修复方案了。

不过我看到群里发出来的各种修复方法,还真是不好看...所以这里也提一下Spring Boot用户怎么修复最简单吧。

最简修复方式

有些小伙伴其实想到了直接通过Spring Boot的Starter去解决,所以还给Spring Boot提了Issue,希望spring-boot-starter-log4j2可以支持最新的2.15版本(提Issue的时候还是rc1,现在已经release了)

但熟悉Spring Boot组件的版本机制的话,其实这个并不需要特地发版解决。只需要加个简单配置就可以了,具体如下图:

是的,就是这么简单,只需要在pom.xml中像下面配置就可以了:

<properties>
<log4j2.version>2.15.0</log4j2.version>
</properties>

如果您正在学习Spring Boot,那么推荐一个连载多年还在继续更新的免费教程:http://blog.didispace.com/spring-boot-learning-2x/

后记

不知道大家有没有发现,最近几次因为漏洞影响到我们Spring Boot应用的都不是Spring Boot原装的东西。

比如:这次的Log4j2, 其实并不是Spring Boot默认使用的日志组件,Spring Boot默认使用Logback。所以这次没有去更改日志组件的小伙伴们昨天都在群里看热闹。。。

而再之前比较严重的漏洞大多都是由另外一位第三方组件引起的,相信你也猜到是谁了吧?

对的,就是Fastjson。

Spring Boot默认的JSON字符串序列化和反序列化工具是Jackson,而并非Fastjson。不过不知道从什么时候开始,就开始流行Fastjson的方案(我记得XML配置时代就开始了,可能是性能考虑?)。

最近DD这边因为还是都用原装组件,所以都没碰到这些问题,还挺舒坦的。所以,最后还是建议大家如果没有没有碰到什么特别的性能要求,或其他原装组件无法完成的任务时候,再去采用其他方案来替换默认方案,这样会更加稳定。毕竟,默认方案除了Spring官方,整个生态也是应用最为广泛的,它们更经得起考验。

最后,调研下,大家平时使用都替换哪些Spring Boot的默认组件呢?留言区告诉大家吧~

欢迎关注我的公众号:程序猿DD,分享外面看不到的干货与思考!

最新文章

  1. PDO连接mysql数据库
  2. iOS之设置头像(访问系统相册、本地上传)
  3. IOS中的Block与C++11中的lambda
  4. LoadLibrary函数定位DLL顺序
  5. 禅道PMS兼容redmine用户认证接口
  6. 关于html页面布局
  7. 菜鸟学Linux命令:cat命令 查看文件内容
  8. Sql Server 常用的查询
  9. Scanner演示
  10. 使用dict和set
  11. mmDeferred
  12. elisp
  13. Hibernate基础学习(二)&mdash;Hibernate相关API介绍
  14. [UWP]了解模板化控件(5):VisualState
  15. (译文)学习ES6非常棒的特性——Async / Await函数
  16. Unity-批量修改Prefab上的属性
  17. Java动态代理 深度详解
  18. JDBC 连接数据库,包含连接池
  19. C# 实现简单的 Heap 堆(二叉堆)
  20. CoreData数据库升级

热门文章

  1. Python基础(@property)
  2. CTF入门学习3-&gt;Web通信基础
  3. ICCV2021 | Vision Transformer中相对位置编码的反思与改进
  4. CTF入门学习4-&gt;前端HTML基础
  5. [loj2978]杜老师
  6. 第09章 MySQL子查询
  7. [FJ2021]D2T3题解
  8. [NOI Online 2021 提高组] 积木小赛
  9. PicGo + Gitee +Typora实现markdown图床
  10. R包customLayout比例拼图