序列化--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;
    }
}
相关推荐
橘子郡1235 分钟前
观察者模式和发布订阅模式对比,Java示例
java
指针满天飞6 分钟前
Collections.synchronizedList是如何将List变为线程安全的
java·数据结构·list
Java技术小馆7 分钟前
重构 Controller 的 7 个黄金法则
java·后端·面试
金銀銅鐵27 分钟前
[Java] 以 IntStream 为例,浅析 Stream 的实现
java·后端
代码的余温1 小时前
SQL性能优化全攻略
数据库·mysql·性能优化
曳渔1 小时前
UDP/TCP套接字编程简单实战指南
java·开发语言·网络·网络协议·tcp/ip·udp
HWL56792 小时前
“preinstall“: “npx only-allow pnpm“
运维·服务器·前端·javascript·vue.js
hqxstudying2 小时前
JAVA项目中邮件发送功能
java·开发语言·python·邮件
最初的↘那颗心2 小时前
Java HashMap深度解析:原理、实现与最佳实践
java·开发语言·面试·hashmap·八股文
小兔兔吃萝卜2 小时前
Spring 创建 Bean 的 8 种主要方式
java·后端·spring