Java para web
exercícios java web

Java para web

Nesse post você poderá conferir alguns exercícios de java web você poderá praticar seus conhecimentos sobre a construção de aplicações para web usando tecnologias como JSP, servlets, etc. Você pode ver as respostas comentadas no final desse post.

 
1-  Porque os Beans são usados na Arquitetura J2EE ao invés do código ser escrito diretamente nos JSP?
a) Permite a separação de funções entre designers (front-end) e desenvolvedores de aplicativos (back-end).
b) Permite integração com as ferramentas de gerenciamento de conteúdo.
c) Permite que sejam desenvolvidos app multiplataformas (mobile, web).
d) Permite que as páginas sejam processadas diretamente pelo navegador (HTML puro).
 
 
2- No JSP, como você pode saber qual método HTTP (GET ou POST) é usado pelo pedido do cliente?
a) usando request.getMethod ()
b) usando request.setMethod ()
c) usando request.getParameter(“Method”)
d) usando request.getMethod(“Post)
c) impossível de saber
 

3- Como um Servlet pode chamar uma página de erro JSP?

a) Esse recurso não é suportado.
b) Quando o servlet lança a exceção, ele será automaticamente pego pela página JSP de chamada.
c) O servlet precisa encaminhar a solicitação para o URL da página de erro específico. A exceção é transmitida como um atributo chamado “javax.servlet.jsp.jspException”.
d) O servlet precisa redirecionar a resposta para a página de erro específica, salvando a exceção em um cookie.
 
4- Qual das classes abaixo inclui o método getSession que é usado para obter o objeto HttpSession?
a) HttpServletRequest
b) HttpServletResponse
c) SessionContext
d) SessionConfig
 
5 – Qual é o escopo padrão do objeto response
a) request
b) page
c) session
d) aplication
 
6- Por qual motivo um desenvolvedor define etiquetas (tags) personalizadas no JSP?
a) Costumava incorporar applets Java em uma página da Web.
b) Descarrega um plugin para o navegador da Web do cliente para executar um applet ou Bean.
c) Precificar sua aplicação para possíveis compradores.
d) Abstrair trechos de código criando tags personalizadas facilitando a implementações de novas aplicações.
e) Tudo acima.
 
7-  Quais das seguintes afirmações são corretas sobre o status da resposta HTTP.
Selecione a resposta correta.
a) Um status de 200 a 299 significa que o pedido foi bem sucedido.
b) Um status de 300 a 399 são mensagens informativas.
c) Um status de 400 a 499 indica um erro no servidor.
d) Um status de 500 a 599 indica um erro no cliente
 
8- Qual é a sequência de execução de métodos em um filtro?
a) init,doFilter,destroy
b) doFilter,init,destroy
c) destroy,doFilter,init
d) destroy,doFilter
 
9 – Qual método é chamado primeiro cada vez que um Servlet é chamado?
a) Start ()
b) Run ()
c) Service()
d) init ()
 
10- Qual dos seguintes itens não é um objeto implícito no JSP?
a) request
b) response
c) page
d) system
 

Respostas

1- (A) – Os Java beans são inseridos como uma camada que separa o código java da interface. Isso permite que boa parte da lógica e regras de comportamento da aplicação fique nos beans e a interface seja gerenciada pelo arquivo JSP. Isso permite que desenvolvedores front-end, desenvolvedores back-end. Veja esse post mostrando como utilizar JSP e Beans na prática.

2- (A) – O JSP permite que você insira dentro do JSP um acesso ao objeto “request”. Ao acessar esse objeto você consegue acessar elementos do cabeçalho, por exemplo, a URI o protocolo usado e também o tipo de requisição. Usando <%= request.getMethod() %> você tem acesso ao tipo de requisição que foi feita. Veja uma explicação mais detalhada aqui

3- (D)  Quando o processamento dos dados de uma página encontra um erro, uma Exception é lançada. No entanto, o encaminhamento para página de erro não é automático. É necessário tratar essa Exceção redirecionando para uma página de erro específica e possívelmente salvando dados da exceção em um cookie para auxiliar o processo de Debug.


            RequestDispatcher view = request.getRequestDispatcher("pagina.jsp");
            view.forward(request, response);
            

Veja uma discussão sobre esse assunto aqui

4- (A) Esse objeto está dentro do servlet request (dado que a sessão faz parte do request). Para acessá-lo basta utilizar o método getSession().    Veja um bom exemplo aqui

5- (A)   O request representa uma solicitação do browser para o servidor, e o ciclo de vida é marcado pelo recebimento da requisição e montagem da resposta para o cliente.    Veja um vídeo do professor Eduardo Guerra

6- (D)   Uma etiqueta ou tag personalizada é definida quando existe a necessidade de encapsular um comportamento do código e facilitar a implementação de novas funcionalidades do sistema.    Veja uma referência sobre como criar essas tags aqui

7- (A)   Veja os tipos de status: Respostas de informação (100-199), Respostas de sucesso (200-299), Redirecionamentos (300-399) Erros do cliente (400-499) Erros do servidor (500-599).

8- (A) – A execução de um filtro inicia-se pelo método init, em sequência passa pelo doFilter e finaliza no método destroy.   Veja uma explicação completa desse tipo de ferramenta aqui.

9- (C)   O método init() é executado quando a servlet é criada dentro do servidor e é chamado uma única vez. Já o método service() é executado todas as vezes que um setvlet é chamado e recebe uma requisição.   Veja uma explicação completa sobre o ciclo de vida de um servlet aqui.  

10- O único objeto que não é implicito do JSP é o “System”. Existem diversos que são realmente implicitos, confira uma lista deles aqui.

Vinicius dos Santos

Apenas um apaixonado por Ciência da Computação e forma com que ela pode transformar vidas!

Deixe uma resposta