JSP – JavaServer Pages – Java

Publicado: 10 de outubro de 2014 em Java

A tecnologia JavaServer Pages (JSP) permite que você crie facilmente conteúdo da web de modo estático e dinâmico. A Tecnologia JSP disponibiliza todas as capacidades dinâmicas da tecnologia Java Servlet, mas fornece uma abordagem mais natural para a criação de conteúdo estático. Uma página JSP é um documento de texto que contém dois tipos de texto: dados estáticos, que podem ser expressos em qualquer formato baseado em texto como o HTML, SVG, WML e XML, e elementos JSP, que constroem conteúdo dinâmico.

Um Scriptlet pode conter instruções da linguagem Java, declarações de variáveis, método, ou expressões que são válidas na língua e podem ser utilizadas em páginas JSP.

Para saber mais sobre a linguagem de scripts utilizada neste exemplo, em especial HTML Forms, você pode utilizar a documentação aberta para web fornecida pela Mozilla no seguinte link:

MDN: https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Forms

Criando um Projeto JSP Utilizando Servlet

1 – Crie um novo projeto do tipo Dynamic Web Project, e o nomeie de DaJSP. Com o botão direito no nome do projeto escolha New e selecione JSP File, o nomeie de index.jsp e clique em Next:

Arquivo JSP

Arquivo JSP

2 – Escolha o arquivo do tipo JSP (xhtml):

JSP - XHTML

JSP – XHTML

3 – Crie um novo Servlet chamado de ServletAcao apenas com o método service, utilize o código abaixo para completar os dois arquivos gerados automaticamente pela IDE Eclipse, o index.jsp e a classe ServletAcao. Clique em Run com o arquivo index.jsp aberto na IDE e o teste:

Rodando a Página JSP

Rodando a Página JSP

4 – Utilize a URL do Eclipse no navegador para ver como a pagina JSP se comporta em um Browser:

Index.jsp

Index.jsp

5 – Após clicar no botão da pagina o Servlet é utilizado através da ação do formulário HTML e o conteúdo Java da classe ServletAcao é executado:

Servlet - Java

Servlet – Java

Exemplo:

Neste exemplo criamos um projeto para web dinâmico que utiliza uma pagina JSP e um Servlet, utilizamos o Java no HTML através de declarações de Scriptlets e utilizamos o Servlet em conjunto com a ação da tag Form da pagina XHTML para que classe do Servlet execute seu conteúdo.

JSP

<?xml version="1.0" encoding="ISO-8859-1" ?>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
	pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Desenvolvimento Aberto - Servlet & Java Server Pages</title>
</head>
<body>
	<p>
		<!-- Este é o modo de escrever código Java em uma pagina html -->
		<!-- utilize a marcação abaixo: -->
		<%
			out.println("Desenvolvimento Aberto (Titulo Java Dinâmico)");
		%>
	</p>
	<br />
	<form action="servletacao">
		<fieldset>
			<legend>Escolha uma banda:</legend>
			<br /> Seu Nome:<br /> <input type="text" name="Nome"> <br />
			<br /> Bandas: <br /> <select name="bandas">
					<option value="Stone Temple Pilots">Stone Temple Pilots</option>
					<option value="Alice in Chains">Alice in Chains</option>
					<option value="Screaming trees" selected>Screaming trees</option>
					<option value="Mother Love bone">Mother Love bone</option>
			</select> <br></br> <input type="submit" value="Enviar">
		</fieldset>
	</form>
</body>
</html>

Java – Servlet

package org.desenvolvimento.aberto;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class ServletAcao Classe do Servlet
 */
@WebServlet("/servletacao")
public class ServletAcao extends HttpServlet {
	private static final long serialVersionUID = 1L;

	/**
	 * @see HttpServlet#HttpServlet() Construtor do Servlet
	 */
	public ServletAcao() {
		super();

	}

	/**
	 * @see HttpServlet#service(HttpServletRequest request, HttpServletResponse
	 *      response) Metodo de serviço do Servlet
	 * 
	 *      Utilizando Request e Response
	 */
	protected void service(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {

		PrintWriter imprimir = response.getWriter();

		// Recupera parametros
		String nome = request.getParameter("Nome");
		String banda = request.getParameter("bandas");

		// Você também pode criar html dinâmico utilizando o Servlet
		imprimir.println("Desenvolvimento Aberto Servlet/JSP:");
		imprimir.println("Nome: " + nome);
		imprimir.println("Banda escolhida: " + banda);

	}

}

 

Publicidade

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s