61 votes

Ignorer un champ spécifique sur la sérialisation avec Jackson

J’utilise la bibliothèque Jackson.

Je veux ignorer un champ spécifique lors de la sérialisation/désérialisation, par exemple :

Devrait me donner:

Mais j’obtiens :

Je sérialise l’objet avec ce code :

Le type réel du champ sur ma classe est une instance de la classe Log4J Logger. Qu’est-ce que je fais de mal?

90voto

Edison Gustavo Muenz Points 2751

Ok, donc pour une raison quelconque, j’ai manqué cette réponse.

Le code suivant fonctionne comme prévu :

1voto

rwblackburn Points 361

Il convient également de noter que cette solution utilise DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES: https://stackoverflow.com/a/18850479/1256179

0voto

Tong Points 159

Référence de Comment puis-je dire à jackson d’ignorer une propriété pour laquelle je n’ai pas de contrôle sur le code source ?

Vous pouvez utiliser Jackson Mixins. Par exemple:

Avec ce Mixin

Avec ceci:

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X