2012-05-10 7 views
0

を満たしたときに直列化から除外されるクラスに注釈を付ける、私はWHEELのリストで対象の車を持って言うことができますが、ジャクソン - 私は次のユースケースを持っているいくつかのプロパティは、特定の基準

class Car{ 
    List<Wheel> wheels; 
    //getters and setters.. 
} 

オブジェクト今それを言うことができますホイールクラスは、私はプロパティを持つすべての車輪のオブジェクトを除外するために何とかCarクラスまたはWheelクラス自体に注釈を付けるために、カスタムシリアライゼーション多分ものまたは何か他のもの、任意の注釈があるかどうかを知りたいisWinterTyre = true含まれるプロパティboolean isWinterTyre;

を持っています「」'のリストをJava' Car 'インスタンスをJSON表現にシリアル化しています。

+0

jsonの出力は何を探していますか? – Fireblaze

+0

jsonの構造は同じですが、私はちょうどそれらのプロパティに応じていくつかの車輪をスキップしたいです。 – Kris

答えて

0

カスタムシリアル化を使用する必要があります。チュートリアルhereを参照してください。

@JsonSerialize(using = CustomSerializer.class) 
class Wheel { 
    //getters and setters.. 
} 


public class CustomSerializer extends JsonSerializer<Wheel> { 

    @Override 
    public void serialize(Wheel value, JsonGenerator generator, 
     SerializerProvider provider) throws IOException, 
      JsonProcessingException { 
       if(value.getSomething() == something) { 
        //Output Wheel using the generator 
       } else { 
        //skip it 
       } 
      } 
} 
関連する問題