序列化--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;
    }
}
相关推荐
考虑考虑1 小时前
JDK26中的List.ofLazy()
java·后端·java ee
小蒜学长1 小时前
基于SpringBoot的公寓报修管理系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·公寓报修管理系统·多角色协同
IT古董1 小时前
《FDE前沿部署工程师实战教程》33 - Enterprise AI Observability:从Agent Trace到全链路智能运维
数据库·人工智能
for_ever_love__1 小时前
MySQL 主从复制讲透:binlog 原理、搭建步骤与读写分离
java·数据库·mysql·binlog·读写分离·原理·主从复制
不会就选b3 小时前
Linux之TCP理论<1>
linux·运维·服务器
小π军4 小时前
操作系统面试题
java·linux·服务器
倔强的石头1064 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
Shaoshing4 小时前
ThreadLocal
java·jvm·threadlocal
写后端的胖头鱼4 小时前
一文详解CAS
java·jvm·spring·cas·乐观锁·自旋