序列化--jackson与hutool对比

场景描述:

1、经过web层处理的序列化【以 jackson 为例】

2、纯工具的序列化【以hutool为例】

代码演示

1)POJO

@Builder
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class TrRegistryVO {

    /**
     * 主键ID
     */
    @JsonProperty("id")
    private String id;

    /**
     * 登记单号
     */
    @JsonProperty("regCode")
    private String regCode;

    /**
     * 车牌号
     */
    @JsonIgnore
    private String plateNumber;
}

2)测试

@RestController
public class JacksonTestController {

    private static final Logger LOGGER = LogManager.getLogger();

    @RequestMapping("/test/json-property")
    public TrRegistryVO jsonPropertyTest() {
        TrRegistryVO trRegistryVO = TrRegistryVO.builder().id("1").regCode("111").plateNumber("111").build();

        // JSONUtil.toJsonStr() 的结果为:{"id":"1","regCode":"111","plateNumber":"111"}
        LOGGER.info("trRegistryVO: {}", JSONUtil.toJsonStr(trRegistryVO));

        // web层返回的 json结果为:{"id":"1","regCode":"111"}
        return trRegistryVO;
    }
}
相关推荐
sunnyday04267 分钟前
MyBatis XML映射文件中的批量插入和更新
xml·java·mysql·mybatis
浪九天12 分钟前
Orcale、MySQL中参数类型的详解和运用场景(不带示例)
数据库·mysql·oracle
程序员阿鹏15 分钟前
jdbc批量插入数据到MySQL
java·开发语言·数据库·mysql·intellij-idea
莲动渔舟16 分钟前
国产编辑器EverEdit - 在编辑器中对文本进行排序
java·开发语言·编辑器
martian6651 小时前
【Java高级篇】——第16篇:高性能Java应用优化与调优
java·开发语言·jvm
m0_748250031 小时前
springboot使用logback自定义日志
java·spring boot·logback
-优势在我1 小时前
Android TabLayout 实现随意控制item之间的间距
android·java·ui
Lojarro1 小时前
JavaEE基础之- Servlet相关
java·servlet·java-ee
Java Fans1 小时前
微信小程序——访问服务器媒体文件的实现步骤
服务器·微信小程序·小程序
考虑考虑1 小时前
MyCat2使用
java·后端·java ee