2015-07-28 2 views
5

я следующий Pojo класса с одним полем преходящего:Gson десериализации и сериализовать поля становления

public class User implements Serializable { 

    public static final long serialVersionUID = 1L; 
    public String name; 
    transient public UserSession[] bookings; 
} 

Я хочу, чтобы переходная подал сериализации и десериализации с библиотекой Gson, но не хотите, чтобы подали сериализовать на файл , Как я могу это достичь?

+0

Как насчет создания пользовательского сериализатора для сериализации вашего класса? –

ответ

14

Как указано in the documentation:

По умолчанию, если вы отметите поле как переходный, он будет исключен. Кроме того, если поле помечено как «статическое», то по умолчанию оно будет исключено. Если вы хотите включить некоторые переходные поля, вы можете сделать следующее:

import java.lang.reflect.Modifier;

Gson gson = new GsonBuilder() .excludeFieldsWithModifiers (Modifier.STATIC) .create();

Что исключит static поля из Gson сериализации, но не transient и volatile из них.

+1

Спасибо, не прочитал документацию! –

Смежные вопросы