campos condicionalmente serialise em Gson

tarifas:

Eu tenho duas classes: Playere Match.

Playertem dois campos, playerIde nameao mesmo tempo Matchcontém dois Playerobjetos e matchIdtambém.

Quando eu serialise PlayerEu quero o id eo nome a aparecer no JSON, no entanto, quando eu serialise Matcheu recebo matchIde Player'campos de non transitórios e seus respectivos valores, embora eu gostaria de obter apenas Player' s ids.

Como posso fazer isso com Gson?

Agradecemos antecipadamente e ficar seguro. Fares

Jason:

Você pode usar a anotação @Expose de Gson apenas para expor nesse campo. Você terá que construir o seu objeto Gson chamando a função GsonBuilders excludeFieldsWithoutExposeAnnotation ().

class Player {

    @Expose
    private final int id;

    //constructor, etc

}
Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();

Acho que você gosta

Origin http://10.200.1.11:23101/article/api/json?id=385601&siteId=1
Recomendado
Clasificación