首页 > 其他分享 >springbooot 序列化对象配置

springbooot 序列化对象配置

时间:2023-01-30 14:11:43浏览次数:30  
标签:NON springbooot 序列化 配置 NULL ObjectMapper Include objectMapper

RbpsemsConfig:
    @Bean
    @Primary
    @ConditionalOnMissingBean(ObjectMapper.class)
    public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder) {
        ObjectMapper objectMapper = builder.createXmlMapper(false).build();

        // 通过该方法对mapper对象进行设置,所有序列化的对象都将按该规则进行序列化
        // Include.ALWAYS 默认
        // Include.NON_DEFAULT 属性为默认值不序列化
        // Include.NON_EMPTY 属性为 空("") 或者为 NULL 都不序列化,则返回的json是没有这个字段的。这样对移动端会更省流量
        // Include.NON_NULL 属性为NULL 不序列化>>>>>
        objectMapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY);
        objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
        // 允许出现特殊字符和转义符
        objectMapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_CONTROL_CHARS, true);
        // 允许出现单引号
        objectMapper.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES, true);
        // 字段保留,将null值转为""
        objectMapper.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>() {
            @Override
            public void serialize(Object o, JsonGenerator jsonGenerator,
                                  SerializerProvider serializerProvider)
                    throws IOException {
                jsonGenerator.writeString("");
            }
        });
        return objectMapper;
    }

标签:NON,springbooot,序列化,配置,NULL,ObjectMapper,Include,objectMapper
From: https://www.cnblogs.com/sensenh/p/17075724.html

相关文章

  • SpringBoot配置文件详解
    简介SpringBoot全局配置文件默认为src/main/resources下的application.properties,后缀可以改为yml,如果application.yml和application.properties两个配置文件都存在,那么,prop......
  • 安装jdk并配置环境变量
    JDK有rpm安装包,也有tar.gz的安装包https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html rpm包安装:rpm-ivhjdk-8u241-linux-x64.rpmtar.gz......
  • caddyserver 几个有用的配置参数
    不是介绍caddyserver的配置参数,核心是关于ssl证书以及配置存储存储的几个参数XDG_DATA_HOME主要是关于caddyserver基于acme协议处理证书的,比较有用,可以更好的管理证书存......
  • Docker第一章:Docker理念与安装配置
    什么是DockerDocker是基于Go语言实现的云开源项目,本身是一个容器运行载体或称之为管理引擎。Docker的主要目标是通过对应用组件的封装、分发、部署、运行等生命周期的管......
  • 问题:MySQL和Redis安装和配置
    MySQLmysql官网下载:https://dev.mysql.com/downloads/mysql/下载后将目录下的bin路径加入到环境变量中在安装目录下创建my.ini配置文件:(可以解决---本地计算机上的......
  • 振弦采集模块配置工具VMTool 扩展功能数据处理
    振弦采集模块配置工具VMTool扩展功能数据处理数据存储数据存储功能模块支持自动或手动将实时数据寄存器值存储到数据库,并支持导出为Excel文件功能。(1)手动存储每点......
  • 河北稳控科技振弦采集模块配置工具VMTool 扩展功能数据处理
    河北稳控科技振弦采集模块配置工具VMTool扩展功能数据处理数据存储数据存储功能模块支持自动或手动将实时数据寄存器值存储到数据库,并支持导出为Excel文件功能。(1)手......
  • Fitter-细节-过滤器拦截路径配置
    Fitter-细节-过滤器拦截路径配置1.具体资源路径:/index.jsp只有访问index.jsp资源时,过滤器才会被执行2.拦截目录:/user/*访问/user下的所有资源时,过滤器都会被执行3......
  • vim 配置写c语言
    .vimrcsetnocompatiblesetbackspace=2setautoindentsetnumbersyntaxenable'enablesyntaxfirstsyntaxon'turnonsyntaxsetts=4'settabsize:setrulerset......
  • Fitter-细节-web.xml配置方式 Fitter-细节-执行流程&生命周期
    Fitter-细节-web.xml配置方式咱们先把之前写的那个FitterDemo1里面的那个WebFitter注解,注释掉才可以写web.xml<?xmlversion="1.0"encoding="UTF-8"?><web-appxmlns......