Questão 66 · Informática: Programação e algoritmos
Em relação à linguagem de programação Java, à arquitetura distribuída de microsserviços e à biblioteca Flyway, julgue os próximos itens.
MapStruct é um gerador de código que simplifica a implementação de mapeamentos entre tipos de bean Java.
Julgue o item:
Gabarito: CERTO
Gabarito definitivo divulgado pela banca Cebraspe (STJ 2024).
Comentário
Gabarito: CERTO.
O item está correto ao afirmar que o MapStruct é um gerador de código que simplifica a implementação de mapeamentos entre tipos de bean Java.
Explicação:
Em aplicações Java, especialmente aquelas que utilizam padrões como DTOs (Data Transfer Objects) para separar a camada de domínio da camada de apresentação ou de comunicação, é comum a necessidade de mapear dados entre diferentes objetos (beans). Por exemplo, converter um objeto de entidade de banco de dados para um DTO que será exposto em uma API REST, ou vice-versa.
Tradicionalmente, esse mapeamento é feito manualmente, com código repetitivo que atribui campo a campo. Isso pode ser tedioso, propenso a erros e difícil de manter em projetos grandes.
O MapStruct resolve esse problema. Ele é uma biblioteca que, em tempo de compilação, gera automaticamente o código de mapeamento com base em interfaces de mapeamento que o desenvolvedor define. Em vez de escrever a lógica de mapeamento, o desenvolvedor apenas declara a interface com os métodos de mapeamento, e o MapStruct gera a implementação. Isso resulta em:
- Menos código boilerplate: Reduz a quantidade de código manual necessário.
- Performance: Como o código é gerado em tempo de compilação, não há overhead de reflexão em tempo de execução, tornando-o mais performático que outras soluções baseadas em reflexão (como o ModelMapper ou Dozer).
- Segurança de tipo: O compilador verifica os mapeamentos, identificando erros em tempo de compilação.
- Manutenibilidade: O código gerado é limpo e fácil de entender, e as interfaces de mapeamento são concisas.
Portanto, a descrição do MapStruct como um gerador de código para simplificar mapeamentos entre beans Java é precisa.
Fundamentos: Conceito de MapStruct · Padrões de projeto em Java (DTOs)
Comentário gerado pela Cravei IA a partir do enunciado e do gabarito definitivo divulgado pela banca, e conferido por uma verificação automática. A IA pode errar: o gabarito oficial sempre prevalece.
Fonte: prova Cebraspe STJ 2024 (Analista Judiciário – Área: Apoio Especializado – Especialidade: Análise de Sistemas de Informação), questão 66, com o gabarito definitivo da banca. Comentário: Equipe Cravei · como fazemos e revisamos.