0% acharam este documento útil (0 voto)
67 visualizações23 páginas

JSP e Servlets - Introducao

O documento introduz os conceitos de Servlets e JSPs para desenvolvimento web com Java. Ele explica que Servlets são componentes instalados no servidor que processam requisições HTTP e JSPs permitem mesclar HTML e código Java para criar páginas dinâmicas. Também descreve os principais elementos da camada web como MVC e apresenta exemplos básicos de Servlets e JSPs.

Enviado por

fauulk
Direitos autorais
© Attribution Non-Commercial (BY-NC)
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
67 visualizações23 páginas

JSP e Servlets - Introducao

O documento introduz os conceitos de Servlets e JSPs para desenvolvimento web com Java. Ele explica que Servlets são componentes instalados no servidor que processam requisições HTTP e JSPs permitem mesclar HTML e código Java para criar páginas dinâmicas. Também descreve os principais elementos da camada web como MVC e apresenta exemplos básicos de Servlets e JSPs.

Enviado por

fauulk
Direitos autorais
© Attribution Non-Commercial (BY-NC)
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 23

JSP e Servlets - Introduo

Contedo
Principais elementos da camada Web
Programando para a web Uma viso mais detalhada de Servlets JSPs na prtica Usando taglibs

Programando para a Web


A criao de aplicativos web utilizando Java faz uso macio dos conceitos de orientao a objetos. Naturalmente distribudas, as aplicaes web necessitam que a arquitetura componentizada seja bem definida. Um modelo muito utilizado o de camadas, no qual so separados elementos de visualizao, controle e modelo. Esse um padro de projeto conhecido como MVC (Model, View, Controller)

Programando para a Web


Um aplicativo web com java

Uma viso de um Servlet


Servlets so componentes instalados no servidor de aplicao e que so acionados por este em resposta a uma requisio do usurio. A definio sobre qual servlet responder a qual requisio feita no arquivo de deploy (web.xml). As classes servlet so providas pelos pacotes javax.servlet e javax.servlet.http (ambos da distribuio JEE). Esses pacotes contem as classes e interfaces necessrias para a criao de aplicativos web.

Tecnologias para o desenvolvimento web


Pacotes Java para servlets

Uma viso mais detalhada de Servlets


A interface javax.servlet.Servlet que prov o padro da programao Servlet, fazendo o papel de abstrao geral da tecnologia. Todo servlet acaba por implementar essa interface, ainda que indiretamente. A interface possui 5 mtodos importantes:
init (ServletConfig conf) chamado pelo servidor de aplicao para iniciar o servlet service( ServletRequest req, ServletResponse res) chamado em resposta a requisies repassadas pelo servidor de aplicao. destroy() - chamado pelo servidor de aplicao para a destruio do servlet. ServletConfig getServletConfig() - retorna um objeto de configuraes do servlet String getServletInfo() - quando chamado, deve retornar informaes sobre o servlet.

Uma viso mais detalhada de Servlets


O ciclo de vida do servlet inicia-se quando o servidor de aplicao carrega o servlet em sua iniciao. Nesse momento, chamado o mtodo init(). Durante o tempo em que o servidor de aplicao estiver no ar, qualquer chamada que for redirecionada ao servlet acionar o mtodo service(), que contm a lgica interna do aplicativo. Quando for solicitado o desligamento do servidor de aplicao, este chamar o mtodo destroy do servlet, a fim de liberar eventuais recursos que tenham sido alocados.

Uma viso mais detalhada de Servlets


O mtodo service onde a magia da servlet acontece. Esse mtodo recebe dois parmetros essenciais dos ServletRequest e o ServletResponse, um representando a requisio e o outro a resposta http. A classe ServletRequest possui uma srie de mtodos que possibilitam a extrao dos dados enviados pelo usurio e que devero ser processadas pelo servlet. A classe ServletResponse possibilita uma forma de comunicao com o cliente, seja disponibilizando dados que devero ser exibidos, ou mesmo o prprio cdigo HTML da resposta.

Tecnologias para o desenvolvimento web


Exemplo de um servlet simples

Uma viso mais detalhada de Servlets


No pacote javax.servlet.http esto os componentes servlet voltados especificamente para o protocolo HTTP. Normalmente, so essas que utilizamos para aplicativos web. Assim, o conjunto de classes a ser utilizado passa a ser HttpServlet, HttpServletRequest e HttpServletResponse. Em atendimento as especificidades do protocolo HTTP, a classe HttpServlet permite a implementao de alguns mtodos especficos, de acordo com os mtodos HTTP. So eles: doGet(), doPost(), doHead(), doPut(), doDelete(), doTrace() e doOptions(). Todos esses mtodo so chamados a partir do mtodo service().

Tecnologias para o desenvolvimento web


Exemplo de um HttpServlet

Tecnologias para o desenvolvimento web


Para se testar um servlet como esse, seria possvel utilizar uma pgina como:

Um clique no link Chamar TesteServlet via GET acionaria o mtodo doGet(), enquanto um clique no boto Chamar via POST acionaria o mtodo doPost().

Uma viso mais detalhada de Servlets


O acesso s informaes enviadas pelo usurio na requisio feito por uma srie de mtodos da classe HttpServletRequest. Existem 6 mtodos importantes:

Uma viso mais detalhada de Servlets


A devoluo de dados ao usurio feita a partir da classe HttpServletResponse. Existem 9 mtodos importantes:

Uma viso mais detalhada de Servlets


Em alguns casos, necessrio apresentar ao usurio uma pgina HTML ou JSP j existente. Esse envio chamado de dispatch e utiliza uma classe chamada RequestDispatcher. Exemplo:

Uma viso mais detalhada de Servlets


Quando, em resposta a solicitao, se deseja enviar dados ao usurio (normalmente para uso por um JSP), utilizado um mtodo especfico da classe HttpServletRequest:

void setAttribute(String nome, Object valor) Adiciona o objeto valor sesso, associando-se ao nome informado.
Para ser recuperado o dado, o JSP utiliza um outro mtodo da classe HTTPServletRequest:

Object getAttribute(String nome) Busca na sesso um objeto que seja referenciado pelo nome informado.

JSP na prtica
Uma pgina JSP permite mesclar cdigos HTML e cdigos Java. Normalmente, so utilizadas para a criao de pginas dinmicas a partir de informaes processadas e enviadas por servlets. Os blocos de cdigo Java existentes nas pginas JSP so chamados de scriptlets e so demarcados por tags bem definidas <% e %>. Desse modo, possvel retirar o cdigo HTML de dentro do servlet (que, de outro modo, teria que ser enviado por l) e tornar a edio das pginas mais amigvel. Cada JSP, ao ser compilada pelo servidor de aplicao, torna-se uma servlet. Mas, tudo isso ocorre de maneira transparente para o programador.

Uma viso mais detalhada de Servlets


Exemplo de um JSP simples:

Uma viso mais detalhada de Servlets


O JSP apresentado seria equivalente ao seguinte servlet:

JSP na prtica
Os scriptlets podem ser usados de duas formas:

Para a incluso de cdigo java puro:


<% String nome = Fulano Detal; out.println(nome); %>

Para a exibio do valor de uma varivel j declarada:


<%=nome%>

JSP na prtica
Tal como na programao Java convencional, ao ser necessria a utilizao de alguma classe, dever ser feito um import da mesma. Para isso, utilizada um diretiva logo no incio do arquivo JSP com a seguinte sintaxe:
<%@ page language=java import=java.util.Date %>

Outra diretiva permite que se componha a pgina JSP com a incluso de outros blocos JSP ou HTML. Para isso, utilizada a diretiva include:
<%@ include file=outraPagina.html %>

H ainda mais uma diretiva til, que permite a configurao de uma pgina padro para o tratamento de erros:
<%@ page errorPage=erro.jsp %>

JSP na prtica
Pginas JSP possuem acesso a objetos implcitos similares aos utilizados explicitamente em servlets. Esses objetos permitem a interao com informaes importantes da requisio e resposta:

Você também pode gostar