如何让 Vert.x 生成的 json 忽略掉 NULL 值

Vert.x 默认使用 jackson 作为 JSON 处理器,但其默认的配置有时候不能满足需求。例如将对象转成 json 时,我们可能希望删除其中的空值属性。

而 Vert.x 并没有提供配置 jackson 的 API,但我们仍可以借助如下的方法来实现:

import io.vertx.core.json.jackson.DatabindCodec;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.PropertyNamingStrategies;

DatabindCodec codec = (DatabindCodec) io.vertx.core.json.Json.CODEC;
ObjectMapper mapper = codec.mapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE );

钦此!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章