java - Jackson:将对象字段序列化为数组

标签 java json jackson

我是 Jackson 的新手,但我偶然发现了以下问题:

我想将一个简单的对象序列化为它的字段数组。 所以考虑以下类(class):

public class UserModel {
    private String id;
    private String firstName;
    private String lastName;
    private String email;
    private String company;
}

我得到以下 json:

{
   "id":"cec34b58",
   "firstName":"foo",
   "lastName":"bar",
   "email":"foo@bar.com",
   "company":"FooBar"
}

但我想要的是:

[
   "cec34b58",
   "foo",
   "bar",
   "foo@bar.com",
   "FooBar"
]

我想避免使用 custom serializer如果有更简单的方法。阅读Jackson Annotations ,我没有立即看到允许立即转换模型的东西。 Google 只建议将 Java 的 Collections 序列化为 json,而不建议将 Java Object 序列化为 json 数组。

最佳答案

这不需要自定义序列化程序,只需要简单的注释:

@JsonFormat(shape=JsonFormat.Shape.ARRAY)
public class UserModel {
    // ...
}

关于java - Jackson:将对象字段序列化为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41505705/

相关文章:

java - 以编程方式下载 SQLite 文件

Java 锁 : How equality check for Monitor locks is done in synchronized block?

json - 如何在模型类中映射动态属性(Swift)

java - BitSet 的 JSON 序列化不起作用

java - 如何使用jackson将Json映射到Java对象

java - 如何在 Spring MVC 转换器中启用 `WRITE_BIGDECIMAL_AS_PLAIN `

java - Heroku 上的 Typesafe Activator 错误绑定(bind)到 PORT

java - 具有重复的正则表达式排列

jquery - 使用 javascript 从 Controller 获取 JSON 以显示在 View 中

json - 如何将 Bower.json 中的每个依赖项更新到最新版本?