您现在的位置是:首页 > 技术人生 > 后端技术后端技术
SpringBoot返回空字符串集合处理
高晓波2020-02-25【后端技术】人已围观
简介今天在做微信公众号返利机器人的时候遇到一个问题,公众号自定义菜单封装成java对象。当subButton,也就是二级菜单为空的时候,返回到前台为null,而前台页面处理报错(自定义菜单前台页面github找的)。
今天在做微信公众号返利机器人的时候遇到一个问题,公众号自定义菜单封装成java对象:
当subButton,也就是二级菜单为空的时候,返回到前台为null,而前台页面处理报错(自定义菜单前台页面github找的)。
其实正常开发的时候也会遇到这样的需求,字符串为null时返回“”,集合为null时返回[]。
解决方案:
package com.gaoxiaobo.web.component.wechat;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@Data
public class Menu {
private String type;
private String name;
private String url;
private String appid;
private String pagepath;
private String key;
@JsonProperty("sub_button")
@JSONField(name = "sub_button")
private List<Menu> subButton;
}
当subButton,也就是二级菜单为空的时候,返回到前台为null,而前台页面处理报错(自定义菜单前台页面github找的)。
其实正常开发的时候也会遇到这样的需求,字符串为null时返回“”,集合为null时返回[]。
解决方案:
@Configuration
public class JacksonConfig {
@Bean
@Primary
@ConditionalOnMissingBean(ObjectMapper.class)
public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder) {
ObjectMapper objectMapper = builder.createXmlMapper(false).build();
objectMapper.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>() {
@Override
public void serialize(Object o, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
jsonGenerator.writeString("");
}
});
return objectMapper;
}
}
Tags:SpringBoot 微信公众号
很赞哦! ()
相关文章
随机图文
-
mybatis plus生成实体entity没有id
总是写很多重复的增删改查毫无意义,浪费生命,于是乎准备弄一个增删改查代码生成工具。网上查了一下mybatis plus挺好的,于是乎打开官网 Quick Start!按照官网的演示栗子:// 演示 -
Springboot集成quartz定时任务可视化配置
使用quartz定时任务已经有一段时间了,今天记录一下Springboot 2.x集成Quartz。 -
SpringBoot排除自动配置
SpringBoot的自动配置给我们开发带来了极大的便利,但有些时候也带来了一些问题。 问题场景: 该项目是基于Springboot + dubbo的微服务架构,框架结构web + facade + service,某 -
maven安装jar到本地仓库
JAVA做淘宝客程序开发的时候,我用的是maven管理依赖jar包。 如何将阿里妈妈下载的jar包以及source jar安装到maven本地仓库呢?