json

121 阅读1分钟

jackson

SpringMVC 默认的 Json 解析器是基于 Jackson 的。

常用yml配置

spring:
  jackson:
    #日期格式化
    date-format: yyyy-MM-dd HH:mm:ss
    serialization:
       #格式化输出 
      indent_output: true
      #忽略无法转换的对象
      fail_on_empty_beans: false
    #设置空如何序列化
    defaultPropertyInclusion: NON_EMPTY
    deserialization:
      #允许对象忽略json中不存在的属性
      fail_on_unknown_properties: false
    parser:
      #允许出现特殊字符和转义符
      allow_unquoted_control_chars: true
      #允许出现单引号
      allow_single_quotes: true

常用注解

  • @JsonProperty 别名(序列化)
  • @JsonAlias 别名(反序列化)
  • @JsonIgnore 忽略字段(序列化、反序列化)
  • @JsonFormat 日期格式化
  • @JsonSerialize(using = ToStringSerializer.class) 将类型转成 String
  • @EnumValue mybatis序列化反序列化
  • @JsonValue 序列化值到前端
  • @JsonCreator 将前端传值反序列化成枚举

fastjson

fastjson 是 Alibaba 出品的。

常用注解

  • @JSONField
    • serialize 忽略字段(序列化)
    • deserialize 忽略字段(反序列化)
    • name 别名(序列化、反序列化)
    • format 日期格式化