- 在服务端输出时过滤掉某个属性
此时 API 在返回 JSON 结果的时候,就不会有这个字段的值了public class User { @JsonSerialize(using = NullSerializer.class) private String pwd; }
- 希望输出的格式是
yyyy-MM-dd HH:mm:ss
public class User { @JsonSerialize(using = NullSerializer.class) private String pwd; @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime gmtCreated; @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime gmtModified; }
- 在自定义 JSON 输出的时候,使用别名
/** * JSON 返回模型 */ public class Result<D> implements Serializable { @JsonProperty("isSuccess") private boolean success = false; private String code; private String message; private D data; // 省略 getter、setter }
- 在输出 JSON 的时候,值为 null 的就不要输出了
spring.jackson.deserialization.fail-on-unknown-properties=false spring.jackson.default-property-inclusion=non_null
允许序列化未知的字段,可以兼容 Java 模型和 JSON 数据不一致的情况
忽略 null 字段 - 用来处理字符串的库
可以使用<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.10</version> </dependency>
StringUtils.isEmpty(str)
来判断是否为空 - 加密,使用
commons-codec
库进行加密
例子:<dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.14</version> </dependency>
//密码加自定义盐值,确保密码安全 String saltPwd = pwd + "_hehe009"; //生成md5值,并转为大写字母 String md5Pwd = DigestUtils.md5Hex(saltPwd).toUpperCase();
杂记
最新推荐文章于 2024-08-03 23:59:53 发布