由于Springboot中默认的json对象序列化框架是Jackson,所以我们需要去了解一下Jackson框架是如何将java对象与json对象实现序列化与反序列化的。

jackson序列化的原理

 根据java对象的getter和setter方法,与JSON对象的名字去一一对应,其中会将getter()方法中的属性名的第一个字母改成小写与JSON对象的属性去对象。

具体可看下面两个例子

json对象java getter/setter对象方法
{“name”:“zhangsan”}setName()/getName()
{“engineName”: “host1”}setEngineName()/getEngineName()
{“primaryEngine”: true}setPrimaryEngine()/isPrimaryEngine()

jackson忽略部分字段

比如说我现在有个User的Java类,有id, userName, password 和job四个属性字段,其中password字段不希望返回给客户端,则可通过如下两种方式实现。
1.在需要忽略的属性上增加@JsonIgnore注解
在这里插入图片描述
2.在类上增加需要忽略属性的注解
在这里插入图片描述

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 4 个月前
8c391e04 6 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐