Olá desenvolvedores, continuando com o desenvolvimento de um projeto em JSP, hoje aprenderemos a passagem de parâmetros. A criação de um projeto em JSP é como a criação de qualquer projeto em Java web. Isto é, na barra de menu clique em File >> New >> Other e busque por web, selecione Dynamic Web Project e clique em Next.
No próximo painel, dê um nome para o projeto e em Target runtime verifique a se a versão do Tomcat é mesma que você instalou e configurou. Em Dynamic web module version, selecione sempre a última versão. Em Configuration, mantenha a configuração default do Apache, e clique em Next >> Next.
O projeto é criado na raiz da pasta WebContent, clicando com o botão direito do mouse sobre a pasta WebContent >> New >> Other, na barra de pesquisa digite JSP, selecione o arquivo JSP File. No painel New JSP File, em File Name altere o nome do arquivo para index.jsp. Clique em Finish.
Lembrando que antes de darmos início a criação do projeto em JSP é necessário startar o servidor TomCat. Qualquer dúvida sobre a criação de um projeto em JSP, clique aqui e saiba tudo o que precisa saber. Agora iremos proceder com a passagem de parâmetro.
JSP: GET E POST
O que iremos fazer é passar parâmetro de uma página para a outra em JSP, e faremos isso utilizando formulários. Na prática será mais fácil compreender o que estamos fazendo, então, mão na massa.
Para esta passagem de parâmetros iremos enviar uma informação/requisição para o servidor, a partir da qual aguardaremos um retorno. E os métodos utilizados para o envio de requisições podem ser GET ou POST.
Assim, temos que o método GET tem a função de recuperar a informação, dessa forma quando há um parâmetro a ser passado, este é inserido na URL, logo após o endereço da página junto a um sinal de interrogação. A separação dos vários parâmetros é feita utilizando o “&”. Nas existe uma grande desvantagem na utilização do GET, ele deixa os dados expostos, o que representa um severo risco a segurança da informação.
Ao contrário do GET, o método POST é mais seguro. Entretanto, é mais comumente utilizado quando trabalhamos com transações que impliquem em alteração no banco de dados. Sua função é recuperar os valores definidos como atributos nos imputs.
Esclarecidos os métodos GET e POST, criaremos um formulário no arquivo index.jsp. O formulário deverá estar dentro da tag body. Ele será constituído de dois inputs, um campo de texto e um botão para enviar.
<form action=””>
<input type="text" id="nome" name="nome" />
<input type="submit" id="" value="Enviar"/>
</form>
O resultado da implementação do formulário fica como mostrado abaixo. Os textos inseridos acima do formulário, foram adicionados no tutorial anterior, assim qualquer dúvida é só recorrer a ele, no link já disponibilizado acima. Observe ainda que ao inserirmos o nome, o mesmo é exibido na URL tendo sido passado por parâmetro, tal como exemplificamos no método GET. Em suma significa que por default o método de requisição de um formulário é o GET.
PASSAGEM DE PARÂMETRO
No entanto, este nome que está sendo passado por parâmetro não está sendo enviado para nenhum lugar. Iremos então criar uma action em uma nova página JSP. E assim iremos fazer a passagem de parâmetro de uma página para a outra.
Para criar uma nova página JSP na pasta WebContent clique com o botão direito do mouse sobre a pasta WebContent >> New >> Other, na barra de pesquisa digite JSP, selecione o arquivo JSP File. No painel New JSP File, em File Name altere o nome do arquivo para receber-nome.jsp. Clique em Finish.
Desse modo faremos a requisição para a página “receber-nome.jsp”, ou seja, no formulário, indique o caminho da página para o atributo action.
<form action=“receber-nome.jsp”></form>
E na página receber nome, dentro da tag body iremos imprimir o nome recebido, como? Utilizando a tag de impressão. Mas atente-se que no JSP para o recebimento de um parâmetro utiliza-se o “request”.
Request (requisição) de forma sucinta é o pedido que um cliente faz ao servidor, descrevendo de forma precisa o que o cliente necessita. Essa descrição compreende os dados que serão passados, ou seja, especificamente aqui, o nome. Para que você possa entender de uma forma bem simples, todas as vezes em que navegamos na web e trocamos de página ou pressionamos a tecla enter na barra de endereço uma nova request é feita.
<% out.print(request.getParameter(“nome”));%>
O botão irá enviar o formulário inserido em direção ao “receber-nome.jsp”, e a página receber-nome receberá os parâmetros e os exibirá na tela.
IMPORTANTE: sempre que criamos uma nova página é recomendado parar o servidor, para em seguida publicá-lo, novamente e startá-lo.
Atualize a página, insira o nome e observe na URL da página que o dado foi enviado para a página receber-nome.
Outra forma mais agradável para quem lê de receber e exibir esta requisição é utilizando uma String e concatenando-a com o request.
<% String nome= "Nome recebido: " +request.getParameter("nome");
out.print(nome)
%>
EM POUCAS PALAVRAS
Esta é a forma mais simples e mais básica de passagem de parâmetro em JSP, e como mencionamos por default o método de envio de requisição utilizado é o GET. E embora não seja um método seguro, ele é o suficiente para que você entenda a passagem de parâmetros, nosso objetivo primeiro neste tutorial. Eu fico por aqui, nos vemos no próximo tutorial.