0

我们如何在 NINJA FRAMEWORK 控制器中返回 JSON 时返回自定义格式的 JSON。

    return Results.json().render(MyPOJO);

我的POJO类

    @Entity
    public class MyPOJO {
       private String Name;
       private String Value;

       public String getName() {
           return Name;
       }
       public void setName(String Name) {
           this.Name = Name;
       }
       public String getValue() {
           return Value;
       }
       public void setValue(String Value) {
           this.Value = Value;
       }
  }

当前 JSON 输出

  [{"Name":"Person1", "Value":"Value1"}, {"Name":"Person2", "Value":"Value2"}]

自定义 JSON 输出(必需)

  [{"1":"Person1", "2":"Value1"}, {"1":"Person2", "2":"Value2"}]
4

1 回答 1

1

Jorge 是对的 - Ninja 只是使用 Jackson 来序列化东西 - 您可以使用 Jackson 的所有优点来自定义实体的解析和渲染。

在您的情况下,解决方案很简单。只需像这样使用@JsonProperty:

@Entity
public class MyPOJO {
   private String Name;
   private String Value;

   @JsonProperty("1")
   public String getName() {
       return Name;
   }
   public void setName(String Name) {
       this.Name = Name;
   }

   @JsonProperty("2")
   public String getValue() {
       return Value;
   }
   public void setValue(String Value) {
       this.Value = Value;
   }

}

于 2014-07-23T20:34:00.140 回答