Guava的Multimap类型无法被序列化和反序列化的解决方法

发布时间 2024-01-03 17:39:33作者: 姜晓姜晓

出现原因: 当一个接口使用Multimap或者接口返回对象使用Multimap类型时会被jackson序列化成类似{empty:false}的格式

解决方法

  1. pom文件中引入jackson-datatype-guava依赖
<dependency>
    <groupId>com.fasterxml.jackson.datatype</groupId>
    <artifactId>jackson-datatype-guava</artifactId>
    <version>${jackson.version}</version>
</dependency>
  1. 在配置类中将GuavaModule类注入到ioc容器中
@Configuration
public class JacksonConfig {

    @Bean
    public Module guavaModule() {
        return new GuavaModule();
    }
}
  1. jackson在项目启动时会自动配置启动对guava的支持

参考: https://stackoverflow.com/questions/54485816/configuring-auto-serialization-of-guava-multimap-with-spring-boot-when-the-spri