Java对象为JSON:字段名称

时间:2014-05-19 10:17:10

标签: java json

我有一个非常标准的Java POJO。我们称之为Dog:

Dog.java有一系列字段。在Java中,约定说字段名称应该以小写字母开头。这意味着我有:

  • public String name;
  • public String dogType;
  • public String weight;

同时,我对我的JSON格式要求JSON成员(名称,dogType和权重)都在开头写有大写字母,即Name,DogType和Weight。

我正在使用杰克逊。

如果我使用下面的标准序列化代码,我会使用与Java相同的方式编写JSON成员名称。

ObjectMapper mapper = new ObjectMapper();
String json = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jReq);
System.out.println(json);

为了解决我的问题,我有两个选择:

  • 我使用杰克逊注释@JsonProperty(value="DogType")
  • 我使用了API
  • 中所述的命名策略

我的问题是:有一种干净的方法吗?

关于这一点,有很多问题可以解释这两种方式:

但没有人进入利弊。

我最初的预感是我应该采用命名策略。这是一个好方法还是一个坏方法?

1 个答案:

答案 0 :(得分:1)

我认为你也应该采用命名策略。这个的优点是,如果需要,你总是可以用注释覆盖它。