当前位置:   article > 正文

alibaba-fastjson漏洞升级记录_fastjson如何升级版本

fastjson如何升级版本

一、升级版本

1.2.44 升级 到 2.0.32

  1. <properties>
  2. ...
  3. <fastjson.version>2.0.32</fastjson.version>
  4. ...
  5. </properties>
  6. ...
  7. <dependencyManagement>
  8. <dependencies>
  9. ...
  10. <!-- fastjson依赖 -->
  11. <dependency>
  12. <groupId>com.alibaba</groupId>
  13. <artifactId>fastjson</artifactId>
  14. <version>${fastjson.version}</version>
  15. </dependency>
  16. <dependency>
  17. <groupId>com.alibaba.fastjson2</groupId>
  18. <artifactId>fastjson2</artifactId>
  19. <version>${fastjson.version}</version>
  20. </dependency>
  21. <dependency>
  22. <groupId>com.alibaba.fastjson2</groupId>
  23. <artifactId>fastjson2-extension</artifactId>
  24. <version>${fastjson.version}</version>
  25. </dependency>
  26. <dependency>
  27. <groupId>com.alibaba.fastjson2</groupId>
  28. <artifactId>fastjson2-extension-spring5</artifactId>
  29. <version>${fastjson.version}</version>
  30. </dependency>
  31. ...
  32. </dependencies>
  33. </dependencyManagement>

二、替换旧 FastJsonHttpMessageConverter

即将旧

com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter

替换新:

com.alibaba.fastjson2.support.spring.http.converter.FastJsonHttpMessageConverter

  1. import com.alibaba.fastjson2.JSONWriter;
  2. import com.alibaba.fastjson2.support.config.FastJsonConfig;
  3. import com.alibaba.fastjson2.support.spring.http.converter.FastJsonHttpMessageConverter;
  4. import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
  5. import org.springframework.context.annotation.Configuration;
  6. import org.springframework.http.MediaType;
  7. import org.springframework.http.converter.HttpMessageConverter;
  8. import org.springframework.lang.NonNull;
  9. import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
  10. import org.springframework.web.util.UrlPathHelper;
  11. import java.util.ArrayList;
  12. import java.util.List;
  13. @Configuration
  14. public class MyWebMvcConfig implements WebMvcConfigurer {
  15. ...
  16. @Override
  17. public void extendMessageConverters(@NonNull List<HttpMessageConverter<?>> converters) {
  18. FastJsonHttpMessageConverter fasHttpMessageConverter = new FastJsonHttpMessageConverter();
  19. FastJsonConfig fastJsonConfig = fasHttpMessageConverter.getFastJsonConfig();
  20. // 个性化输出定义
  21. fastJsonConfig.setWriterFeatures(
  22. JSONWriter.Feature.WriteNullStringAsEmpty,
  23. JSONWriter.Feature.WriteMapNullValue,
  24. JSONWriter.Feature.WriteNullBooleanAsFalse);
  25. List<MediaType> supportedMediaTypes = new ArrayList<>(2);
  26. supportedMediaTypes.add(MediaType.APPLICATION_JSON);
  27. fasHttpMessageConverter.setSupportedMediaTypes(supportedMediaTypes);
  28. converters.add(0, fasHttpMessageConverter);
  29. }
  30. ...
  31. }

三、路径替换:可选项

即将项目中旧

com.alibaba.fastjson.JSONObject

换成新

com.alibaba.fastjson2.JSONObject

fastjson2-2.0.32 源码

FASTJSON 1.x升级指南

Fastjson 2.0.32发布

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/918235
推荐阅读
相关标签
  

闽ICP备14008679号