Saltar al contenido

Solo usando @JsonIgnore durante la serialización, pero no la deserialización

Haz todo lo posible por entender el código de forma correcta antes de aplicarlo a tu proyecto y si tquieres aportar algo puedes comentarlo.

Solución:

Exactamente cómo hacer esto depende de la versión de Jackson que esté usando. Esto cambió alrededor de la versión 1,9, antes de eso, puede hacer esto agregando @JsonIgnore al captador.

Que has probado:

Agregue @JsonIgnore solo en el método getter

Hacer esto, y también agregar un específico @JsonProperty anotación para su nombre de campo JSON “contraseña” al método de establecimiento para la contraseña en su objeto.

Versiones más recientes de Jackson han agregado READ_ONLY y WRITE_ONLY argumentos de anotación para JsonProperty. Entonces también podrías hacer algo como:

@JsonProperty(access = Access.WRITE_ONLY)
private String password;

Los documentos se pueden encontrar aquí.

Para lograr esto, todo lo que necesitamos son dos anotaciones:

  1. @JsonIgnore
  2. @JsonProperty

Usar @JsonIgnore en el miembro de la clase y su captador, y @JsonProperty en su incubadora. Una ilustración de muestra ayudaría a hacer esto:

class User 

    // More fields here
    @JsonIgnore
    private String password;

    @JsonIgnore
    public String getPassword() 
        return password;
    

    @JsonProperty
    public void setPassword(final String password) 
        this.password = password;
    

Desde la versión 2.6: una forma más intuitiva es utilizar el com.fasterxml.jackson.annotation.JsonProperty anotación en el campo:

@JsonProperty(access = Access.WRITE_ONLY)
private String myField;

Incluso si existe un captador, el valor del campo se excluye de la serialización.

JavaDoc dice:

/**
 * Access setting that means that the property may only be written (set)
 * for deserialization,
 * but will not be read (get) on serialization, that is, the value of the property
 * is not included in serialization.
 */
WRITE_ONLY

En caso de que lo necesite al revés, simplemente use Access.READ_ONLY.

Te mostramos reseñas y calificaciones

Finalizando este artículo puedes encontrar las crónicas de otros sys admins, tú aún tienes la opción de dejar el tuyo si lo deseas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *