Академический Документы
Профессиональный Документы
Культура Документы
@bhpachulski
Bibliografia
Use a cabea ! Jsp e Servlets
Roteiro
Java Java EE
Servidor de Aplicao e Servlet Container
Preparao do Ambiente
Instalando o NetBeans Configurando o Tomcat
Primeiro Projeto
Estrutura do Projeto Criado
JSP
Scriptlets Expression Language e TagLibs
Java
Linguagem de programao da dcada de 90. No incio conhecida como lenta e processo de desenvolvimento lento. Slogan: Write once, run anywhere. (Escreva uma vez, execute em qualquer lugar) Sintaxe semelhante ao C, C++, php ... Vamos utilizar para desenvolver para Android (Google). Linguagem simples.
Orientao a Objetos
aqui que a coisa complica. A orientao a objetos complicada ? NO ! Entretanto necessrio mergulhar neste mundo, necessrio quebrar o paradigma.
Classe
Vamos comear a pensar orientado a objetos !
A Palavra classe vem da biologia, todos os seres tem uma srie de atributos e comportamentos. Entretanto no so iguais !
1. 2. 3. 4.
1. 2. 3. 4.
Eu como o bolo
Para orientao a objetos a classe (Receita) uma especificao do Objeto. Assim possvel criar centenas de bolos a partir dessa classe.
Variveis primitivas
A linguagem Java oferece diversos tipos de dados com os quais podemos contar. Os tipos primitivos correspondem a dados mais simples. So eles:
boolean char byte short int long float double
Char
Byte Short Int
Long
Float Double
Estruturas de Controle
Java possui algumas estruturas que so utilizadas para tomada de deciso ou iterao. So elas:
For While
Do while
If else Switch, break Try, catch, finaly
Continue
Java EE
Java Enterprise Edition, consiste em um conjunto de especificaes bem detalhadas, que nada mais so do que uma receita de como deve ser implementado um software. Algumas Especificaes:
JavaServer Pages (JSP), Java Servlets, JSTL;
Java Persistence API (JPA); Dentre outras.
que
suporta
as
seguintes
Um dos servlets container mais famosos do mercado o Apache Tomcat, entretanto existem outros;
O Bsico do Netbeans
Primeiro Projeto
Criar projeto
Novo Projeto Java Web Aplicao Web
Estrutura
Pginas Web Todo o contedo web (css, imagens) Pacotes de Cdigo-fonte (cdigo Java) Bibliotecas (Frameworks) Arquivos de Configurao (Arquivos de Configurao do Netbeans)
Servlets
Em Ingls Servidorzinho ! Foi desenvolvido para gerar pginas dinmicas, recebendo requisies HTTP; Cada Servlet uma classe Java que extende HttpServlet; Recebe requisies e devolve uma resposta; possivel gerar HTML e devolver respostas dinmicas para o browser;
Mtodos
doGet Intercepta requisies GET doPost Intercepta requisies POST Parametros Request Response
Utilizando o objeto PrintWriter vamos escrever duas sadas (HTML) distintas para os mtodos citados acima; Exemplo: Ol Mundo GET e Ol Mundo POST
Exerccio Servlet 01
Com o projeto criado, crie dois arquivos JSP, formularioSvt01.jsp e RecebePostSvt01
No primeiro arquivo crie um formulrio HTML, que passe um nome e dois valores numricos (nota do primeiro e segundo bimestre); Receba os valores e apresente: Nome do individuo entre a tag h1; Valor do Primeiro e Segundo bimestre (SE > 7.0 na cor Azul Se no na cor Vermelha); Mdia do Aluno; SE > 7.0 Apresente Reprovado; Aprovado SE menor
Exerccio Servlet 02
Com o projeto criado, crie dois arquivos JSP, formularioSvt02.jsp e RecebePostSvt02
No primeiro arquivo crie um formulrio HTML, que passe o salrio do indivduo;
Mysql e o Workbench
Registre o Servidor no Mysql Workbench
Crie uma base de dados; Crie uma tabela chamada Aluno com os seguintes atributos: idAluno Integer, AutoIncrement Nome Varchar(50) Email Varchar(50) Nascimento Date
Exerccio Servlet 03
Com o projeto criado, crie dois arquivos JSP, formularioSvt03.jsp e RecebePostSvt03
No primeiro arquivo crie um formulrio HTML, que represente o cadastro de Aluno: idAluno Nome Email Nascimento Receba os dados e monte o insert para cadastrar o Aluno no Banco de dados, utilizando o mtodo doPost Instancie o Objeto de Conexo com o Banco de dados Envie o SQL para o Banco de dados
Exerccio Servlet 04
Utilizando o Servlet que foi criado no Exerccio 03, implemente no mtodo doGet a listagem de todos os Alunos cadastrados no Banco de dados. Siga os seguintes passos:
Recupere o objeto de conexo com o banco de dados Use o mtodo executeQuery(String) : ResultSet da Statement para enviar a classe
Passe por todos os registros utilzando o metodo next() da classe ResultSet
Java Beans
Java Beans so classes que possuem um construtor sem argumentos e mtodos de acesso (gets e sets). Pode-se utilizar Java Beans por vrios motivos, normalmente as classes de modelo, ou seja, classes que representam dados a serem persistidos. Link para especificao do Java http://java.sun.com/products/javabeans Beans:
Veremos no decorrer da disciplina como utilizar e para que utilizar cada um desses objetos.
JSP (hello.jsp)
Defina uma varivel chamada msgOla do tipo String; Atribua o valor Hello World a varivel; Apresente a varivel entre a tag HTML h1;
E no segundo arquivos iremos apresentar os dois nmeros que foram passados e ainda apresentar o resultado da soma dos dois.
Usuario
Email
Apresente os valores entre uma lista HTML (<ul>), utilizando o mesmo metodo que utilizavamos nos Servlets (println(String str));
Expression Language
Desenvolvido para diminuir a quantidade de cdigo digitado no JSP. A EL interpretada pelo ServletContainer. Entretanto com limitaes tais como:
No instancia objetos; No executa operaes condicionais; Iteraes; Etc
TagLibs
Para ter e executar os comportamentos citados no slide anterior temos algumas TAG`s. As TagLibs se assemelham com as tags do HTML; Por que foram criadas ? Exatamente por que os programadores estavam codificando muito nos JSP. E no esse o foco; Assim criou as tag librarys ou TagLibs, algo mais parecido com a aparncia do contedo de um JSP; possvel executar laos de repetio, condicionais, criar objetos. Para utilizar uma TagLig necessrio definir qual ser utilizada e seu prefixo. Ex: <%@ taglib
uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
core e fmt
As taglibs core e fmt so duas das tags mais utilizadas no jsp. Tem as seguintes funcionalidades: Core
If Catch Foreach Choose e When ParseDate FormatDate SetTimeZone ParseNumber
Fmt
E no segundo arquivos iremos apresentar os dois nmeros que foram passados e ainda apresentar o resultado da soma dos dois.
Utilize a tag catch
JSP + Servlet
Vamos comear a separar o HTML do cdigo. O Servlet vai tratar da lgica de negcio e o JSP vai ser a interface com o usurio. Utilizaremos para isso o Objeto ResquestDispatcher, que nos ajudar a integrar as duas tecnologias, ou seja, tornar possvel intercambio de informaes.
Objeto RequestDispatcher
Afim de aliar as funcionalidades entre Servlet e JSP, o objeto em questo, trabalha para transportar dados entre as tecnologias citadas. Para utiliza-lo necessrio recuperar sua instancia do objeto HttpServletRequest com o mtodo getRequestIspatcher, passando o arquivo JSP que receber os dados.