JSP & Servlets
 Introdução Teórica

Técnicas de Programação
          FA7
 Prof.º Eduardo Mendes
JSP e Servlets
    Jsp, JEE e o papel do Servlet
    JSP em um contêiner Web
    JSTL
    JSP e JavaBeans
    Arquitetura de uma aplicação
O quê
                  um SERVIDOR web faz?
    Um servidor web recebe uma solicitação do
     cliente e devolve algo para ele
Clientes e servidores
 Mas como          devem entender
  cliente e    HTTP e os navegadores
 servidor se   devem conhecer HTML
comunicam?
Estrutura da
                               conversação HTTP?
Principais Elementos Request      Principais Elementos Response
  Método HTTP (ação a ser          Código de Status
   executada)
                                    Tipo de conteúdo (content-
  Página a ser acessada             type: texto, imagem...)
  Parâmetros de formulários        O conteúdo
   (como argumentos para
   métodos)
HTML
                 Parte da resposta HTTP
    Uma resposta HTTP contém HTML
e o Request???
    O método HTTP
       Tipo de requisição que está sendo feita

       Diversos tipos

       Mais usados: GET e POST
Servidores web
    Distribuem páginas estáticas
    Acha a página procurada
     e a devolve examente
     como ela está no servidor



    E se precisarmos de algo dinâmico???
Por que
Servlets & JSPs?
Páginas dinâmicas e estáticas
    Conteúdo
        Estático: não se altera



         Dinâmicos: mudanças de acordo com a
          interação com o usuário
Quando usar páginas dinâmicas
    A página web deve ser baseada nos dados
     informados pelo usuário

    Possibilidade de usar modelos quando os dados
     mudam freqüentemente

    A página usa informações de banco de dados ou
     de outras fontes
JEE – Java Enterprise Edition
    Criada para o desenvolvimento de aplicações
     corporativas

    Usa um modelo de aplicação Multi-Camadas
     Distribuídas ou Multi-tier
Java EE
                      Aplicação Multi Camada
    Uma aplicação web deve possuir:
       A camada de apresentação

              (navegador)
         A camada lógica de negócios
              (aplicação que reside no servidor WEB)
         A camada de armazenamento
              (o banco de dados com os dados da aplicação)


    As camadas devem ser distintamente separadas
Java EE
Aplicação Multi Camada
Java EE: Camada Web
    Uma das camadas na plataforma JEE
    Interage com o navegador para criar conteúdo
     dinâmico
    Tecnologias envolvidas:
        Servlet

        Java Server Pages (JSP)
Java EE: Camada Web
Camada WEB: Servlet
    Resposta primária do Java para adicionar
     funcionalidade aos servidores

    Capaz de ler dados nas requisições passadas ao
     servidor e gerar uma resposta dinâmica

    Provê uma versão especial que implementa
     características específicas HTTP
Camada WEB: Servlet
    Desvantagens

         São classes Java

         Produzem saída imprimindo caracteres na
          resposta HTTP
Camada WEB: JSP
    São como páginas HTML, só que tem os recursos
     de um servlet

    Permite que desenvolvedores e web-designers
     trabalhem em conjunto
Contêiner JEE
Contêiner JEE
    Essencial para uma aplicação JEE
    Todo JEE inclui JSP ou Servlets
        Só são executados através do contêiner

    Características
        Suporta comunicações

        Gerencia ciclos de vidas

        Suporta multi-tarefa

        Permite segurança declarativa

        Suporta JSP
Estrutura básica de uma
    aplicação Java WEB

Java Web 1 Introducao

  • 1.
    JSP & Servlets Introdução Teórica Técnicas de Programação FA7 Prof.º Eduardo Mendes
  • 2.
    JSP e Servlets   Jsp, JEE e o papel do Servlet   JSP em um contêiner Web   JSTL   JSP e JavaBeans   Arquitetura de uma aplicação
  • 3.
    O quê um SERVIDOR web faz?   Um servidor web recebe uma solicitação do cliente e devolve algo para ele
  • 4.
    Clientes e servidores Mas como devem entender cliente e HTTP e os navegadores servidor se devem conhecer HTML comunicam?
  • 5.
    Estrutura da conversação HTTP? Principais Elementos Request Principais Elementos Response   Método HTTP (ação a ser   Código de Status executada)   Tipo de conteúdo (content-   Página a ser acessada type: texto, imagem...)   Parâmetros de formulários   O conteúdo (como argumentos para métodos)
  • 6.
    HTML Parte da resposta HTTP   Uma resposta HTTP contém HTML
  • 7.
    e o Request???   O método HTTP   Tipo de requisição que está sendo feita   Diversos tipos   Mais usados: GET e POST
  • 8.
    Servidores web   Distribuem páginas estáticas   Acha a página procurada e a devolve examente como ela está no servidor   E se precisarmos de algo dinâmico???
  • 9.
  • 10.
    Páginas dinâmicas eestáticas   Conteúdo   Estático: não se altera   Dinâmicos: mudanças de acordo com a interação com o usuário
  • 11.
    Quando usar páginasdinâmicas   A página web deve ser baseada nos dados informados pelo usuário   Possibilidade de usar modelos quando os dados mudam freqüentemente   A página usa informações de banco de dados ou de outras fontes
  • 12.
    JEE – JavaEnterprise Edition   Criada para o desenvolvimento de aplicações corporativas   Usa um modelo de aplicação Multi-Camadas Distribuídas ou Multi-tier
  • 13.
    Java EE Aplicação Multi Camada   Uma aplicação web deve possuir:   A camada de apresentação   (navegador)   A camada lógica de negócios   (aplicação que reside no servidor WEB)   A camada de armazenamento   (o banco de dados com os dados da aplicação)   As camadas devem ser distintamente separadas
  • 14.
  • 15.
    Java EE: CamadaWeb   Uma das camadas na plataforma JEE   Interage com o navegador para criar conteúdo dinâmico   Tecnologias envolvidas:   Servlet   Java Server Pages (JSP)
  • 16.
  • 17.
    Camada WEB: Servlet   Resposta primária do Java para adicionar funcionalidade aos servidores   Capaz de ler dados nas requisições passadas ao servidor e gerar uma resposta dinâmica   Provê uma versão especial que implementa características específicas HTTP
  • 18.
    Camada WEB: Servlet   Desvantagens   São classes Java   Produzem saída imprimindo caracteres na resposta HTTP
  • 19.
    Camada WEB: JSP   São como páginas HTML, só que tem os recursos de um servlet   Permite que desenvolvedores e web-designers trabalhem em conjunto
  • 20.
  • 21.
    Contêiner JEE   Essencial para uma aplicação JEE   Todo JEE inclui JSP ou Servlets   Só são executados através do contêiner   Características   Suporta comunicações   Gerencia ciclos de vidas   Suporta multi-tarefa   Permite segurança declarativa   Suporta JSP
  • 22.
    Estrutura básica deuma aplicação Java WEB