【问题标题】:Jackson - serialize to other than stringJackson - 序列化为非字符串
【发布时间】:2015-10-25 14:31:08
【问题描述】:

我是新来的,这是我的第一篇文章。我最近与杰克逊取得了联系,我想知道在序列化时是否可以获得字符串(或 int)以外的其他值。如果我混淆了总站的某些部分,请多多关照。

例如:我有枚举

 public static enum Type {A, B, C}

在像

这样的类中
public class MyClass{
   private Type charCat;
   public Type getCharCat(){
      return this.charCat;
   }
   public void setCharCat(Type t){
      this.charCat = t;
   }
}

但如果我创建一个对象(例如使用 charCat A)并将其写入一个文件,我会得到

... 字符猫:“A” ...

我怎么能得到

... 字符猫:A ...

?

我尝试了几个技巧和解决方案,但都没有奏效。

【问题讨论】:

    标签: string serialization enums jackson


    【解决方案1】:

    我不确定您要的是什么,但唯一有效的 JSON 类型是

    { "charCat" : "A" }
    

    因为所有文本值必须用双引号括起来。只有不需要的值是数字、布尔值(truefalse)和 null。所以将值序列化为

    { charCat : A }
    

    不是有效的 JSON;所以没有办法得到这样的输出。

    【讨论】:

      猜你喜欢
      • 2020-05-20
      • 1970-01-01
      • 2021-05-11
      • 2018-07-24
      • 1970-01-01
      • 1970-01-01
      • 2022-01-08
      • 1970-01-01
      • 2019-08-21
      相关资源
      最近更新 更多