12 - jstl e el.pdf

Upload: rogerio-rodrigues-da-silva

Post on 23-Feb-2018

254 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/24/2019 12 - JSTL e EL.pdf

    1/24

  • 7/24/2019 12 - JSTL e EL.pdf

    2/24

    PROF. ALEXANDRE CARLOS

    [email protected]

  • 7/24/2019 12 - JSTL e EL.pdf

    3/24

    JSTL e EL

  • 7/24/2019 12 - JSTL e EL.pdf

    4/24

    Agenda

    EL

    JSTL: Core

    Formating

  • 7/24/2019 12 - JSTL e EL.pdf

    5/24

    JSP e Cdigo Java

    Utilizar cdigo java dentro de arquivos JSPs no uma

    boa prtica!

    Motivaes:

    Cdigo confuso para pginas complexas;

    Dificuldade de manuteno;

  • 7/24/2019 12 - JSTL e EL.pdf

    6/24

    Qual a soluo?

    EL Expression Language

    JSTL Java Standard Tag Library

  • 7/24/2019 12 - JSTL e EL.pdf

    7/24

    Expression Language (EL)

    Facilita o acesso as informaes presentes em um escopo.

    Servlet

    JSP com scr ip t les e expressions

    protected voiddoGet(HttpServletRequest req,

    HttpServletResponse resp)

    throws ServletException, IOException {

    String nome = Thiago";

    req.setAttribute("usuario", nome);}

    Ol

    JSP com EL

    ${usuario} O Mesmo cdigo com Scriptets

    e Expressions:

  • 7/24/2019 12 - JSTL e EL.pdf

    8/24

    Expression Language (EL)

    Facilita a leitura de propriedades de Java Beans no JSP:

    Servlet

    protected voiddoGet(HttpServletRequest req,

    HttpServletResponse resp)

    throws ServletException, IOException {

    Cliente cliente = newCliente("Thiago",20);request.setAttribute("cli",cliente);

    }

    JSP com EL

    ${cli.nome}

    ${cli.idade}

    Java Bean

    public classCliente {

    privateString nome;

    private intidade;

    //...

  • 7/24/2019 12 - JSTL e EL.pdf

    9/24

    Expression Language (EL)

    Podemos utilizar tambm o operador []

    Servlet

    protected voiddoGet(HttpServletRequest req,

    HttpServletResponse resp)

    throws ServletException, IOException {

    Cliente cliente = newCliente("Thiago",20);request.setAttribute("cli",cliente);

    }

    JSP com EL

    ${cli[nome]}

    ${cli[idade]}

    Java Bean

    public classCliente {

    privateString nome;

    private intidade;

    //...

  • 7/24/2019 12 - JSTL e EL.pdf

    10/24

    Expression Language (EL)

    Podemos utilizar o operador [] para recuperar um item de

    uma coleo:Servlet

    protected voiddoGet(HttpServletRequest req,

    HttpServletResponse resp)

    throws ServletException, IOException {

    ArrayList nomes = newArrayList();nomes.add("Thiago");

    nomes.add("Yamamoto");

    request.setAttribute("lista", nomes);

    }

    JSP com EL

    ${lista[1]} Recupera a segundaposio da lista (Yamamoto)

  • 7/24/2019 12 - JSTL e EL.pdf

    11/24

    Expression Language (EL)

    Objetos Implcitos

    Objeto Descrio

    pageScope Map com os atributos do escopo page

    requestScope Map com os atributos do escopo request

    sessionScope Map com os atributos do escopo session

    applicationScope Map com os atributos do escopo application

    param Map com os parmetros da request

    initParam Map com os parmetros iniciais do sistema

  • 7/24/2019 12 - JSTL e EL.pdf

    12/24

    JSTL Java Standard Tag Library

    um conjunto de tag libraries que complementam as

    facilidades da EL;

    As tag libraries substituem o cdigo java no JSP;

    JSTL possuem vrias bibliotecas:

    Core Library

    SQL Library

    Formating Library

    XML Library

  • 7/24/2019 12 - JSTL e EL.pdf

    13/24

    JSTL Configurao

    Para utilizar JSTL necessrio adicionar 2 jars na pasta lib

    do projeto: javax.servlet.jsp.jstl-1.2.1.jar

    javax.servlet.jsp.jstl-api-1.2.1.jar

    Os arquivo s . jars devem estar

    semp re no diretr io

    WebContent/WEB-INF/l ib

  • 7/24/2019 12 - JSTL e EL.pdf

    14/24

    JSTL Java Standard Tag Library

    As pginas JSP que vo utilizar JSTL precisam utilizar a

    diretiva taglib para refernciar a biblioteca:

    Prefixo qu e ser ut ilizado

    para usar a taglibURI da tab lib

  • 7/24/2019 12 - JSTL e EL.pdf

    15/24

    Permite iterar uma lista de elementos;

    timos para montar tabelas e selects;

    Servlet

    protected voiddoGet(HttpServletRequest req,HttpServletResponse resp)

    throws ServletException, IOException {ArrayList nomes = newArrayList();

    nomes.add("Thiago");

    nomes.add("Yamamoto");

    request.setAttribute("lista", nomes);}

  • 7/24/2019 12 - JSTL e EL.pdf

    16/24

    items lista para ser percorrida;

    var nome da varivel que armazenar cada item da lista

    JSP

    Nome

    ${n}

    Monta uma tabela com as

    in fo rm aes da lis ta

  • 7/24/2019 12 - JSTL e EL.pdf

    17/24

    Seletor, permite testar uma condio

    JSP

    Valor Maior que 100

    Ola Administrador!

    Testa nmeros

    Testa se uma lista

    no es t vazia

    Testa Str ing

  • 7/24/2019 12 - JSTL e EL.pdf

    18/24

    Parecido com o switch do java;

    Permite testar vrias condies, somente um bloco executado.

    Valor Maior que 100

    Valor Menor que 50

    Valor entre 50 e 100

    JSP

  • 7/24/2019 12 - JSTL e EL.pdf

    19/24

    Utilizado para exibir informaes na pgina

    JSP

  • 7/24/2019 12 - JSTL e EL.pdf

    20/24

    Permite criar links com parmetros

    JSP

    Cliente

    Cliente

    Resultado

  • 7/24/2019 12 - JSTL e EL.pdf

    21/24

    Formataes

    Podemos utilizar o Formating Library para formatar

    informaes que sero exibidas nas pginas; Precisamos adicionar a taglib nas pginas que iro utilizar

    a formatao:

    JSP

  • 7/24/2019 12 - JSTL e EL.pdf

    22/24

    Formata data:

    JSP

    Exibe Data

    Exibe Hora

    Exibe Data e Hora

    Defin ido atravs de um pattern

  • 7/24/2019 12 - JSTL e EL.pdf

    23/24

    Formata nmeros:

    JSP

    Formato Valor Monetrio

    Formato Porcentagem

  • 7/24/2019 12 - JSTL e EL.pdf

    24/24

    Copyright 2015 Prof. Alexandre Carlos.

    Todos direitos reservados. Reproduo ou divulgao total ou parcial deste documento expressamenteprobido sem o consentimento formal, por escrito, do Professor (autor).