springboot fastjson 2.0.0版本 反序列化配置
时间: 2024-03-24 17:36:20 浏览: 167
SpringBoot Redis配置Fastjson进行序列化和反序列化实现
在Spring Boot中使用fastjson 2.0.0版本时,可以通过配置文件或代码方式来设置反序列化配置。以下是常见的配置方式:
1. 配置文件方式
在application.properties或application.yml文件中添加如下内容:
```
# 开启AutoType功能
spring.fastjson.parser.autoTypeSupport=true
# 关闭ASM功能
spring.fastjson.parser.asmEnable=false
```
2. 代码方式
在Spring Boot的启动类中,可以通过重写configureMessageConverters方法来设置fastjson的反序列化配置,例如:
```
@Configuration
public class FastJsonConfig extends WebMvcConfigurationSupport {
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
FastJsonConfig config = new FastJsonConfig();
// 开启AutoType
config.setAutoTypeSupport(true);
// 关闭ASM
config.setASMEnable(false);
converter.setFastJsonConfig(config);
converters.add(converter);
}
}
```
注意,Spring Boot默认使用Jackson作为JSON处理库,如果想要使用fastjson,则需要排除Jackson并添加fastjson依赖,例如:
```
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-json</artifactId>
</exclusion>
</exclusions>
</dependency>
```
以上是一些常见的反序列化配置方式,具体的配置应该根据具体情况进行选择和设置,以确保安全和性能。建议仔细阅读fastjson的官方文档,并参考相关的安全规范和最佳实践。
阅读全文