Ola William.
Como o nome da anotaçao diz, ela é sobre a transformação de JSON para objeto e vice-versa. Isso acontece nos DTOs dos controllers por exemplo.
Primeiramente temos que definir, conforme a própria doc:
- deserialization (reading values from external representation)
- serialization (writing out values as external representation)
Então desserialização é quando os dados da request é convertido do JSON para objeto java (lendo valores do contexto externo). Já serialização acontece quando objeto java é convertido para JSON (escrevendo para fora do contexto), no response. Em resumo: serializar é escrever o JSON na resposta e desserializar é obter o objeto.
Assim com essa anotação você pode indicar dentro de um DTO quais atributos da classe são exclusivamente para leitura ou escrita do JSON.