A analista Joelma está desenvolvendo o web service tjapRest ...

Próximas questões
Com base no mesmo assunto
Q2447927 Programação
A analista Joelma está desenvolvendo o web service tjapRest utilizando o Spring Boot. Determinadas operações de tjapRest devem ser executadas assincronamente. Para implementar as operações assíncronas de forma simples e direta, Joelma recorreu a duas anotações padrões do Spring. A primeira anotação habilita o suporte do Spring à execução de métodos assíncronos. A segunda anotação marca determinado método como um candidato à execução assíncrona.

Joelma recorreu às anotações do Spring:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é A - @EnableAsync e @Async.

Para resolver essa questão, é essencial conhecer as anotações do Spring que permitem a execução de operações assíncronas, um recurso importante para desenvolvimento de aplicações que necessitam de alta performance e paralelismo. Aqui seguem as explicações detalhadas sobre a alternativa correta e as incorretas:

Alternativa A - @EnableAsync e @Async

Essa é a alternativa correta. No Spring Boot, a anotação @EnableAsync é utilizada para habilitar o suporte à execução de métodos assíncronos. Ao colocar essa anotação no código, o Spring sabe que deve procurar métodos anotados com @Async e executá-los de forma assíncrona. A anotação @Async marca um método específico como candidato para execução assíncrona, permitindo que ele seja executado em uma thread separada.

Alternativa B - @AsyncConfigurer e @Async

Essa alternativa está incorreta porque, apesar de @Async ser usada corretamente para marcar métodos como assíncronos, a anotação @AsyncConfigurer não é usada para habilitar a execução de métodos assíncronos. @AsyncConfigurer é uma interface que pode ser implementada para configurar o executor assíncrono, mas ela sozinha não habilita o suporte assíncrono.

Alternativa C - @EnableAsync e @Asynchronous

Essa alternativa está incorreta porque, embora @EnableAsync seja a anotação correta para habilitar o suporte assíncrono, a anotação @Asynchronous não existe no contexto do Spring. A anotação correta para marcar métodos assíncronos é @Async.

Alternativa D - @AsyncConfigurer e @EnableAsync

Essa alternativa está incorreta porque, embora @EnableAsync seja usada corretamente para habilitar o suporte assíncrono, a anotação @AsyncConfigurer não marca métodos como assíncronos. Novamente, @AsyncConfigurer é uma interface para configuração e não uma anotação para marcar métodos.

Alternativa E - @AsyncConfigurer e @Asynchronous

Essa alternativa está incorreta em dois aspectos. Primeiro, @AsyncConfigurer não habilita o suporte assíncrono; segundo, @Asynchronous não é uma anotação reconhecida pelo Spring para execução assíncrona. A combinação correta seria @EnableAsync e @Async.

Entender as anotações do Spring e suas funcionalidades é crucial para desenvolver aplicações robustas e eficientes. O uso correto de @EnableAsync e @Async permite que operações intensivas em processamento possam ser executadas de forma assíncrona, melhorando a performance e a escalabilidade das aplicações.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

@EnableAsync: Essa anotação é usada para habilitar o suporte do Spring para a execução de métodos de forma assíncrona.

@Async: Essa anotação é aplicada aos métodos que devem ser executados de maneira assíncrona.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo