Professor Daniel Brandão 1
ENTENDENDO
SERVLETS E JSP
1. Introdução aos Servlets
2. Requisições em Servlets
3. Ciclo de vida
4. JSP – JavaServer Pages
5. Scriptlet
6. Resumo e Revisão
2
DO QUE TRATAREMOS:
3
1. INTRODUÇÃO AOS
SERVLETS
Páginas dinâmicas:
 Quando a Web surgiu, seu objetivo era a troca de
conteúdos através de páginas HTML estáticas.
 Imagens, animações e outros conteúdos também
eram disponibilizados.
 Era pouco para o potencial da web. Era preciso
páginas HTML geradas dinamicamente baseadas nas
requisições dos usuários.
4
1. INTRODUÇÃO AOS SERVLETS
 Criou-se a ideia de “geradores dinâmicos”.
Servidores web consultando outros arquivos com
conteúdos (CGI).
 Em Java, surgiu então Servlet em 1997. Pequeno
servidor com objetivo de receber chamadas HTTP,
processar e devolver uma resposta.
 Seguindo o conceito POO, servlets são objetos Java
que recebem requisições (request) e produzem algo
(response), como uma página HTML por ex.
5
1. INTRODUÇÃO AOS SERVLETS
6
2. REQUISIÇÕES EM
SERVLETS
 Para escrevermos uma servlet, criamos uma classe Java
que estenda HttpServlet e sobrescreva um método
chamado service. Esse método será o responsável por
atender requisições e gerar as respostas adequadas.
7
2. REQUISIÇÕES EM SERVLETS
 Para escrevermos uma servlet, criamos uma classe Java
que estenda HttpServlet e sobrescreva um método
chamado service. Esse método será o responsável por
atender requisições e gerar as respostas adequadas.
 EX:
protected void service (HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
...
}
8
2. REQUISIÇÕES EM SERVLETS
 Ao desenvolver uma aplicação Web, sempre
precisamos realizar operações no lado do servidor,
com dados informados pelo usuário, seja através de
formulários ou seja através da URL.
 Como exemplo, podemos ter uma página HTML com
um formulário de contato a ser salvo em um banco
de dados.
9
2.1 PARÂMETROS NAS REQUISIÇÕES
 EX: Formulário Adiciona Contato
10
2.1 PARÂMETROS NAS REQUISIÇÕES
 EX: Servlet
11
2.1 PARÂMETROS NAS REQUISIÇÕES
12
2.1 PARÂMETROS NAS REQUISIÇÕES
13
3. CICLO DE VIDA
SERVLETS
14
3. CICLO DE VIDA SERVLETS
15
4. JSP – JAVA SERVER
PAGES
 JSP é uma tecnologia padrão, baseada em templates
para servlets. O mecanismo que a traduz é embutido
no servidor
16
4. JSP – JAVA SERVER PAGES
 JSP é uma tecnologia padrão, baseada em templates
para servlets. O mecanismo que a traduz é embutido
no servidor
 Em um servidor que suporta JSP, o processamento
passa por uma camada adicional onde a página é
transformada (compilada) em um servlet
17
4. JSP – JAVA SERVER PAGES
 JSP é uma tecnologia padrão, baseada em templates
para servlets. O mecanismo que a traduz é embutido
no servidor
 Em um servidor que suporta JSP, o processamento
passa por uma camada adicional onde a página é
transformada (compilada) em um servlet
 Trata-se, portanto, de um arquivo baseado em HTML
mas salvo em formato .JSP
18
4. JSP – JAVA SERVER PAGES
19
4. JSP – FUNCIONAMENTO
 EX: Trecho de código contendo tags HTML e bloco de
códigos (scriptlets) e expressões
20
4. JSP – JAVASERVER PAGES
21
5. SCRIPTLET
 Scriptlet é o código escrito entre <% e %>. São
Blocos de código executados sempre que uma
página JSP é processada.
22
4. SCRIPTLET
 Scriptlet é o código escrito entre <% e %>. São
Blocos de código executados sempre que uma
página JSP é processada.
 Esse nome é composto da palavra script (pedaço de
código em linguagem de programação) com o sufixo
let, que indica algo pequeno.
23
4. SCRIPTLET
 Scriptlet é o código escrito entre <% e %>. São
Blocos de código executados sempre que uma
página JSP é processada.
 Esse nome é composto da palavra script (pedaço de
código em linguagem de programação) com o sufixo
let, que indica algo pequeno.
 O sufixo “let” é bastamte utilizado na linguagem
Java, tanto em scriptlets como em servlets, portlets,
applets etc...
24
4. SCRIPTLET
 Sintaxe dos elementos interpretados no servidor:
 Diretivas: <%@ ... %>
 Declarações: <%! ... %>
 Expressões: <%= ... %>
 Scriptlets: <% ... %>
 Comentários: <%-- ... --%>
 Ações: <jsp:ação... />
 Custom tags: <prefixo:elemento... />
25
4. SCRIPTLET
26
6. REVISÃO
 Servlet x JSP
Servlets:
 Melhor em termos de Eng. Software
 Mais flexível
 Praticamente não permite independência entre o
designer e o programador
27
6. REVISÃO
 Servlet x JSP
JSP:
 Mais fácil de aprender
 Um nível maior de abstração para o Servlets
 O Web Designer pode trabalhar independente do
Web Developer e vice-versa
28
6. REVISÃO
Os JSPs são transformados em uma Servlet,
por um compilador JSP. Esse compilador pode
gerar um código Java que é então compilado
para gerar bytecode diretamente para a
servlet
29
6. REVISÃO
 Ciclo de vida
30
6. REVISÃO
 Comentários em JSP
31
6. REVISÃO
 Segurança. Na prática são usados quatro métodos:
 1. Nas páginas que só devam ser acessadas após o Login
do usuário, informação na sessão
 2. Verificar de onde o usuário veio e só permitir o acesso
a partir de elementos do próprio site
 3. Verificar código malicioso nos campos onde o usuário
insere informações
 4. Verificar variáveis que compõe instrução SQL antes de
enviá-la ao SGBD 32
6. REVISÃO
33
Dúvidas?
Obrigado pela atenção!
+ em www.DanielBrandao.com.br

Servlets e JSP

  • 1.
    Professor Daniel Brandão1 ENTENDENDO SERVLETS E JSP
  • 2.
    1. Introdução aosServlets 2. Requisições em Servlets 3. Ciclo de vida 4. JSP – JavaServer Pages 5. Scriptlet 6. Resumo e Revisão 2 DO QUE TRATAREMOS:
  • 3.
  • 4.
    Páginas dinâmicas:  Quandoa Web surgiu, seu objetivo era a troca de conteúdos através de páginas HTML estáticas.  Imagens, animações e outros conteúdos também eram disponibilizados.  Era pouco para o potencial da web. Era preciso páginas HTML geradas dinamicamente baseadas nas requisições dos usuários. 4 1. INTRODUÇÃO AOS SERVLETS
  • 5.
     Criou-se aideia de “geradores dinâmicos”. Servidores web consultando outros arquivos com conteúdos (CGI).  Em Java, surgiu então Servlet em 1997. Pequeno servidor com objetivo de receber chamadas HTTP, processar e devolver uma resposta.  Seguindo o conceito POO, servlets são objetos Java que recebem requisições (request) e produzem algo (response), como uma página HTML por ex. 5 1. INTRODUÇÃO AOS SERVLETS
  • 6.
  • 7.
     Para escrevermosuma servlet, criamos uma classe Java que estenda HttpServlet e sobrescreva um método chamado service. Esse método será o responsável por atender requisições e gerar as respostas adequadas. 7 2. REQUISIÇÕES EM SERVLETS
  • 8.
     Para escrevermosuma servlet, criamos uma classe Java que estenda HttpServlet e sobrescreva um método chamado service. Esse método será o responsável por atender requisições e gerar as respostas adequadas.  EX: protected void service (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ... } 8 2. REQUISIÇÕES EM SERVLETS
  • 9.
     Ao desenvolveruma aplicação Web, sempre precisamos realizar operações no lado do servidor, com dados informados pelo usuário, seja através de formulários ou seja através da URL.  Como exemplo, podemos ter uma página HTML com um formulário de contato a ser salvo em um banco de dados. 9 2.1 PARÂMETROS NAS REQUISIÇÕES
  • 10.
     EX: FormulárioAdiciona Contato 10 2.1 PARÂMETROS NAS REQUISIÇÕES
  • 11.
     EX: Servlet 11 2.1PARÂMETROS NAS REQUISIÇÕES
  • 12.
  • 13.
    13 3. CICLO DEVIDA SERVLETS
  • 14.
    14 3. CICLO DEVIDA SERVLETS
  • 15.
    15 4. JSP –JAVA SERVER PAGES
  • 16.
     JSP éuma tecnologia padrão, baseada em templates para servlets. O mecanismo que a traduz é embutido no servidor 16 4. JSP – JAVA SERVER PAGES
  • 17.
     JSP éuma tecnologia padrão, baseada em templates para servlets. O mecanismo que a traduz é embutido no servidor  Em um servidor que suporta JSP, o processamento passa por uma camada adicional onde a página é transformada (compilada) em um servlet 17 4. JSP – JAVA SERVER PAGES
  • 18.
     JSP éuma tecnologia padrão, baseada em templates para servlets. O mecanismo que a traduz é embutido no servidor  Em um servidor que suporta JSP, o processamento passa por uma camada adicional onde a página é transformada (compilada) em um servlet  Trata-se, portanto, de um arquivo baseado em HTML mas salvo em formato .JSP 18 4. JSP – JAVA SERVER PAGES
  • 19.
    19 4. JSP –FUNCIONAMENTO
  • 20.
     EX: Trechode código contendo tags HTML e bloco de códigos (scriptlets) e expressões 20 4. JSP – JAVASERVER PAGES
  • 21.
  • 22.
     Scriptlet éo código escrito entre <% e %>. São Blocos de código executados sempre que uma página JSP é processada. 22 4. SCRIPTLET
  • 23.
     Scriptlet éo código escrito entre <% e %>. São Blocos de código executados sempre que uma página JSP é processada.  Esse nome é composto da palavra script (pedaço de código em linguagem de programação) com o sufixo let, que indica algo pequeno. 23 4. SCRIPTLET
  • 24.
     Scriptlet éo código escrito entre <% e %>. São Blocos de código executados sempre que uma página JSP é processada.  Esse nome é composto da palavra script (pedaço de código em linguagem de programação) com o sufixo let, que indica algo pequeno.  O sufixo “let” é bastamte utilizado na linguagem Java, tanto em scriptlets como em servlets, portlets, applets etc... 24 4. SCRIPTLET
  • 25.
     Sintaxe doselementos interpretados no servidor:  Diretivas: <%@ ... %>  Declarações: <%! ... %>  Expressões: <%= ... %>  Scriptlets: <% ... %>  Comentários: <%-- ... --%>  Ações: <jsp:ação... />  Custom tags: <prefixo:elemento... /> 25 4. SCRIPTLET
  • 26.
  • 27.
     Servlet xJSP Servlets:  Melhor em termos de Eng. Software  Mais flexível  Praticamente não permite independência entre o designer e o programador 27 6. REVISÃO
  • 28.
     Servlet xJSP JSP:  Mais fácil de aprender  Um nível maior de abstração para o Servlets  O Web Designer pode trabalhar independente do Web Developer e vice-versa 28 6. REVISÃO
  • 29.
    Os JSPs sãotransformados em uma Servlet, por um compilador JSP. Esse compilador pode gerar um código Java que é então compilado para gerar bytecode diretamente para a servlet 29 6. REVISÃO
  • 30.
     Ciclo devida 30 6. REVISÃO
  • 31.
     Comentários emJSP 31 6. REVISÃO
  • 32.
     Segurança. Naprática são usados quatro métodos:  1. Nas páginas que só devam ser acessadas após o Login do usuário, informação na sessão  2. Verificar de onde o usuário veio e só permitir o acesso a partir de elementos do próprio site  3. Verificar código malicioso nos campos onde o usuário insere informações  4. Verificar variáveis que compõe instrução SQL antes de enviá-la ao SGBD 32 6. REVISÃO
  • 33.