2015-07-28 3 views
5

У меня есть POJO с Джексоном АннотацияКак игнорировать аннотации pojo при использовании Jackson ObjectMapper?

 public class Sample{ 

     private String property1; 

     @JsonIgnore 
     private String property2; 

     //...setters getters 

    } 

Так что, когда библиотека Джексона используются для automarshalling другими структур, таких как Resteasy эти аннотации помогают направлять процесс сериализации и deserilization.

Но когда я хочу явно сериализовать с помощью ObjectMapper mapper = new ObjectMapper(), я не хочу, чтобы эти аннотации вносили какой-либо эффект, вместо этого я настрою объект mapper на мое требование.

Итак, как сделать аннотации неэффективными при использовании ObjectMapper?

ответ

5

Настройка вашего ObjectMapper не использовать эти аннотации, как это:

ObjectMapper objectMapper = new ObjectMapper().configure(
       org.codehaus.jackson.map.DeserializationConfig.Feature.USE_ANNOTATIONS, false) 
        .configure(org.codehaus.jackson.map.SerializationConfig.Feature.USE_ANNOTATIONS, false); 

Это работает!

10

Привет, если вы используете com.fasterxml.jackson тогда код -

ObjectMapper mapper = new ObjectMapper().configure(MapperFeature.USE_ANNOTATIONS, true); 
+2

или mapper.disable (MapperFeature.USE_ANNOTATIONS); –

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