Java para WEB JSTL Java para WEB JSTL JavaServer Pages Standard Tag Library Java para WEB API que encapsulou em tags simples toda a funcionalidade que diversas páginas Web precisam, como controle de laços (fors), controle de fluxo do tipo if else, manipulação de dados XML e a Internacionalização de uma aplicação. Java para WEB Benefícios da JSTL Melhor Manutenção (no scriptlets); Facilidade; Padrão; Funcionalidades. Java para WEB APIs da JSTL core: estruturas de repetição, condições... fmt: formatações de data, números... functions: funções de Strings... sql: Utilização da Linguagem SQL em tags... xml: estrutura de repetição em XMLs... Java para WEB Instalando a JSTL https://jstl.dev.java.net/ Coloque na pasta /lib jstl.jar standard.jar Java para WEB JSTL - CORE Java para WEB Importando JSTL em uma página JSP: <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> uri = endereço onde se encontra o JSTL prefix = prefixo que será utilizado para acessar as tags. Java para WEB Hello World em JSTL <c:out value=“Hello World" ></c:out> Java para WEB Pode ser colocado variáveis em qualquer escopo com JSTL. <c:set scope="session" value=“João" var=“nome" ></c:set> <c:out value=“${nome}”></c:out> Java para WEB Prática Crie uma página JSP que sete uma variável de sessão com o seu nome, e em outra página exiba seu valor. Java para WEB Redirecionar para Outra página <c:redirect url=“minhaPagina.jsp"></c:redirect> <c:redirect url="minhaPagina.jsp"> <c:param name=“curso" value=“Java"></c:param> </c:redirect> Java para WEB Importar outras páginas <c:import url=“menu.jsp"></c:import> <c:import url=“rodape.jsp"></c:import> Java para WEB Prática Crie duas páginas, uma representando o menu e outra o rodapé e em suas páginas importe-as. Java para WEB Remover Objetos de Escopos <c:remove var="contato" scope="session"/> Java para WEB Crie uma página que exiba um conteúdo de uma sessão e em outro link remova o mesmo em um scopo de Sessão. Java para WEB Estrutura de Condição IF <c:if test="${param.status == „OK‟}” var=“result"> ... </c:if> Java para WEB Prática Construa um formulário que faça uma pergunta ao usuário: “Qual a Capital de Alagoas?”, exiba na tela uma mensagem e a bandeira do Estado (Imagem) caso o usuário tenha acertado, caso o usuário não digite nada Exiba uma Mensagem dizendo que ele precisa digitar um valor. Java para WEB Prática Construa um formulário simulando uma compra na Internet, após o usuário digitar o CPF uma servlet deve verificar se ele está inadimplente ou não, caso o usuário esteja com débitos você não deve mostrar a ele o botão de “Comprar Produto”, mostrando apenas os botões de “Ver Produtos” e “Voltar a Home”. Java para WEB Estrutura de Condição IF-ELSE <c:choose> <c:when test="${param.numero=='1'}“> … </c:when> <c:otherwise> … </c:otherwise> </c:choose> Java para WEB Prática Construa um formulário onde o usuário selecionará (através de um número), em uma lista de fotos de estados, qual estado ele deseja. Em outra página exiba a descrição da opção escolhida utilizando JSTL. Java para WEB Anteriormente criamos vários Beans, como listar os nomes dos Contatos(Bean) em uma tabela? Java para WEB Lembram de EL? <jsp:useBean id="listaContato" class="com.fejal.cesmac.ListaContato"/> ${listaContato.lista} Java para WEB Agora podemos ter flexibilidade na utilização de uma lista que venha de um método. Java para WEB Estrutura de Repetição ForEach <c:forEach var=“varRepeticao" items="${class.method}"> Java para WEB Construa uma tabela com uma lista de Contatos e para cada contato um link para envio de Email (Caso o Contato não possua email não exiba o Link para email). Dica: <a href="mailto:[email protected]"> Java para WEB <jsp:useBean id=“contatos" class=“br.cd.ClasseLista"/> <c:forEach var="contato" items="${contatos.lista}"> ${contato.nome} <a href="mailto:${contato.email}">${contato.email}</a> </c:forEach> Java para WEB ForTokens Funciona como separador de valores. Java para WEB <c:forTokens var="cont" items="${lista.lista}" delims=";"> ${cont} </c:forTokens> step – indica qual o incremento; begin – indica de onde deve começar; end – indica onde deve terminar; varStatus – variável que indica valores dentro da lista. Java para WEB Prática Construa um método em uma classe que retorne String com vários nomes separados por ; , após isso exiba-os na página. Java para WEB Exercícios Coloque um estilo zebrado na sua listagem de contatos. Construa um questionário com 5 questões de única escolha. Após isso exiba a porcentagem que o usuário acertou. Cada questão deve ter 3 opções de escolha.