2016-04-18 1 views
0

私はdropwizardを使用しています。応答を送信するとき、ジャクソンは応答クラスを応答JSONに変換します。dropwizardを使用して設定フィールドのみで応答を送信する方法

問題は、常に設定されているわけではないPOJOクラスの1つのフィールドがあり、設定されていない場合、レスポンスJSONにnull値が表示されることです。

someField:null 

ただし、このフィールドが設定されている場合にのみ表示します。 どうすればよいですか?たぶんいくつかの注釈があります。

答えて

0

だから、jacksonには、フィールドを除外できる注釈があることがわかりました。実際にはフィールドを除外しませんが、場合によってはフィールドを選択することもできます。 答えは@JsonInclude(Include.NON_NULL)です。このフィールドは、nullでない場合に備えてのみ含まれます。

1

はいこれを行う方法があります。クラスレベルであなたのPOJOであなたも

mapper.setSerializationInclusion(Include.NON_NULL); 

を使用してグローバルにここで参照だこれを行うことができます

@JsonInclude(Include.NON_NULL) //or Include.NON_EMPTY 
public static class Request { 
    // ... 
} 

追加:http://fasterxml.github.io/jackson-annotations/javadoc/2.0.0/com/fasterxml/jackson/annotation/JsonInclude.Include.html

関連する問題