Independente da linguagem de programação para web que o dese...
Qual das formas a seguir é uma forma correta de declaração do método doGet em um servlet Java ?
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: A - protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
Para entender por que a alternativa A é a correta, vamos falar um pouco sobre Servlets e a passagem de parâmetros pela URL em aplicações web. Servlets são pequenos programas que executam no servidor e são responsáveis por tratar as requisições HTTP e gerar respostas para o cliente. Em Java, a passagem de parâmetros é comumente realizada através dos métodos doGet() e doPost() que são definidos na classe HttpServlet.
O método doGet() é utilizado quando queremos obter dados do servidor e os parâmetros são passados pela URL. A assinatura correta deste método deve receber dois parâmetros essenciais:
- HttpServletRequest - Este objeto representa a requisição que foi feita pelo cliente (navegador ou outro). Ele contém dados como parâmetros da requisição, cabeçalhos, etc.
- HttpServletResponse - Este objeto representa a resposta que o servidor irá enviar para o cliente. É através dele que podemos enviar dados como texto, HTML, JSON, entre outros formatos.
Os nomes HttpRequest e HttpResponse presentes nas outras alternativas não são reconhecidos no contexto de Servlets Java, pois não correspondem a nenhuma classe presente nas bibliotecas Java Servlet API. Portanto, as alternativas B e D estão automaticamente incorretas por esse motivo.
Além disso, na alternativa C, os parâmetros foram invertidos. Isso não é correto pois a assinatura padrão do método exige que o HttpServletRequest seja o primeiro parâmetro e o HttpServletResponse seja o segundo.
Portanto, seguindo a convenção e a documentação da API de Servlets, a alternativa A é a única que apresenta a assinatura correta do método doGet(), com os parâmetros na ordem correta e nomes das classes corretos, e é por isso que é a resposta correta para essa questão.
Vale lembrar que a palavra-chave protected indica o modificador de acesso do método, que neste caso está correto, pois permite que o método seja acessado pela própria classe, subclasses ou classes no mesmo pacote, o que é adequado para métodos de Servlets.
Esses conhecimentos são fundamentais para programadores web que desejam utilizar Java Servlets e são frequentemente cobrados em concursos públicos na área de TI, especialmente aqueles que focam em desenvolvimento Java para a web.
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
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo