Buscar

Aula 03(2)

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aula 2 – Para Internet II
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
O que veremos nesta aula
JSP
MVC 1 x MVC 2
Sessão
Criptografia
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Container WEB e J2EE
Solicitação HTTP
Resposta HTTP
Cliente
Servidor
Container Web
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Arquitetura de três camadas
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Java Server Pages (JSP)
Elementos Script
Diretivas
Ações
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Java Server Pages (JSP)
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Java Server Pages (JSP)
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Java Server Pages (JSP)
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web
<form action="Controle.Funcionarios.LTDA" method="post">
 Digite o Codigo do Funcionario: <input type="text" name="txtCodigoFuncionario" /><br/>
 Tipo do Funcionario: 
 <input type="radio" name="rdbTipoFuncionario" value="1" checked="checked" />Vendedor
 <input type="radio" name="rdbTipoFuncionario" value="2" /> Gerente <br/>
 Digite o Nome do Funcionario: <input type="text" name="txtNomeFuncionario" /><br/>
 Digite o Salario Base : <input type="text" name="txtSalarioBaseFuncionario" /><br/>
 Digite o Total das Vendas: <input type="text" name="txtTotalVendasFuncionario" /><br/>
 <input type="submit" value="Enviar" />
 <input type="reset" value="Cancelar" />
 </form>
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web - Modelo
public abstract class Pessoa {
 
 private String nome; 
 public void setNome(String nome) {
 this.nome = nome;
 }
 public String getNome() {
 return nome;
 }
 
}
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web - Modelo
public abstract class Funcionario extends Pessoa{
 private String codigoFuncionario;
 private double salarioBase,totalVendas;
 public void setCodigoFuncionario(String codigoFuncionario) { this.codigoFuncionario = odigoFuncionario; }
 public void setSalarioBase(double salarioBase) { this.salarioBase = salarioBase; }
 public void setTotalVendas(double totalVendas) { this.totalVendas = totalVendas; }
 public String getCodigoFuncionario() { return codigoFuncionario; }
 public double getSalarioBase() { return salarioBase; }
 public double getTotalVendas() { return totalVendas; }
 
 public abstract double getSalarioLiquido();
}
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web - Modelo
public class Vendedor extends Funcionario{
 public double getSalarioLiquido() {
 return getSalarioBase() + getTotalVendas()*3/100;
 }
 
}
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web - Modelo
public class GerenteVendas extends Funcionario{
 
 public double getSalarioLiquido() {
 return getSalarioBase() + getTotalVendas()*1/100;
 } 
}
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web - Servlet
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
 response.setContentType("text/html;charset=UTF-8");
 int tipo = Integer.parseInt(request.getParameter("rdbTipoFuncionario"));
 Funcionario funcionario;
 
 RequestDispatcher despacho = request.getRequestDispatcher("resultado.jsp");
 
 if(tipo==1)
 funcionario = new Vendedor();
 else
 funcionario = new GerenteVendas();
 
 
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web - Servlet
 
 funcionario.setCodigoFuncionario(request.getParameter("txtCodigoFuncionario"));
 funcionario.setNome(request.getParameter("txtNomeFuncionario"));
 funcionario.setSalarioBase(Double.parseDouble(request.getParameter("txtSalarioBaseFuncionario")));
 funcionario.setTotalVendas(Double.parseDouble(request.getParameter("txtTotalVendasFuncionario")));
 
 request.setAttribute("func", funcionario);
 
 despacho.forward(request, response);
 
 
 }
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web - JSP
 <body>
 <h1>Funcionarios...</h1>
 
 <% Funcionario funcionario = (Funcionario) request.getAttribute("func"); %>
 
 Codigo: <%= funcionario.getCodigoFuncionario() %>
 Nome: <%= funcionario.getNome() %>
 Salario Base: <%= funcionario.getSalarioBase() %>
 Total Vendas: <%= funcionario.getTotalVendas() %>
 Salario Liquido: <%= funcionario.getSalarioLiquido() %>
 </body>
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – WEB.xml
 <servlet>
 <servlet-name>ControleFuncionarios</servlet-name>
 <servlet-class>com.profoswaldo.controller.ControleFuncionarios</servlet-class>
 </servlet>
 <servlet-mapping>
 <servlet-name>ControleFuncionarios</servlet-name>
 <url-pattern>/Controle.Funcionarios.LTDA</url-pattern>
 </servlet-mapping>
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
MVC 1
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
MVC 2
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
JavaBeans
são classes Java com algumas características especiais
deve ser concreta e pública
Deve disponibilizar um construtor sem argumentos
Expõem os campos internos como propriedades acessadas por métodos de acesso/atualização padronizados
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – index.jsp
<html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <title>Página Index</title>
 </head>
 <body>
 <jsp:forward page="formularioAluno.jsp"/>
 </body>
</html>
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – formularioAluno.jsp
<form name="form" action="controle.central" method="post">
 Digite a matricula: <input type="text" name="txtMatricula"/><br/>
 Digite o nome: <input type="text" name="txtNome"/><br/>
 Digite o Teste: <input type="text" name="txtTeste"/><br/>
 Digite a Prova: <input type="text" name="txtProva"/><br/>
 <input type="submit" value="Enviar">
 <input type="reset" value="Cancelar">
 </form>
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – web.xml
 <servlet>
 <servlet-name>Controle</servlet-name>
 <servlet-class>controle.Controle</servlet-class>
 </servlet>
 <servlet-mapping>
 <servlet-name>Controle</servlet-name>
 <url-pattern>/controle.central</url-pattern>
 </servlet-mapping>
<welcome-file-list>
 <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
Tema da Apresentação
PARA
INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – Controle.java
 protected void processRequest(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
 response.setContentType("text/html;charset=UTF-8");
 RequestDispatcher view=null;
 Aluno al = null;
 try {
 al = new Aluno();
 al.setMatricula(request.getParameter("txtMatricula"));
 al.setNome(request.getParameter("txtNome"));
 al.setTeste(Double.parseDouble(request.getParameter("txtTeste")));
 al.setProva(Double.parseDouble(request.getParameter("txtProva")));
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – Controle.java
 request.setAttribute("parametroAluno", al);
 view = request.getRequestDispatcher("sucesso.jsp");
 }catch(Exception e){
 view = request.getRequestDispatcher("erro.jsp");
 } finally { 
 view.forward(request, response);
 }
 } 
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – Aluno.java
public class Aluno {
 private String matricula, nome;
 private double teste, prova;
 public Aluno(){}
 public String getMatricula() { return matricula; }
 public void setMatricula(String matricula) { this.matricula = matricula; }
 public String getNome() { return nome; }
 public void setNome(String nome) { this.nome = nome; }
 public double getTeste() { return teste; }
 public void setTeste(double teste) { this.teste = teste; }
 public double getProva() { return prova; }
 public void setProva(double prova) { this.prova = prova; }
 public double getMedia(){ return (teste+prova)/2; }
}
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – sucesso.jsp
<body>
 <h1>Dados do Aluno:</h1>
 <jsp:useBean id="parametroAluno" class="modelo.Aluno" scope="request"/>
 Matricula: <jsp:getProperty name="parametroAluno" property="matricula"/> <br/>
 Nome: <jsp:getProperty name="parametroAluno" property="nome"/><br/>
 Média: <jsp:getProperty name="parametroAluno" property="media"/><br/>
 </body>
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aplicação Web – sucesso.jsp
<body>
 <h1>Dados do Aluno:</h1>
 <jsp:useBean id="parametroAluno" class="modelo.Aluno" scope="request"/>
 Matricula: <jsp:getProperty name="parametroAluno" property="matricula"/> <br/>
 Nome: <jsp:getProperty name="parametroAluno" property="nome"/><br/>
 Média: <jsp:getProperty name="parametroAluno" property="media"/><br/>
 </body>
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
HttpSession Java
Tema da Apresentação
PARA INTERNET II – AULA 3
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Bibliografia
Java: como programar - 8ª edição
Deitel, Paul J.; Deitel, Harvey M.
Aprenda J2EE em 21 Dias 
Bond, Martin ... [et al.]
Desenvolvendo Sites de E-Commerce: como criar um eficaz e lucrativo site de e-commerce, passo a passo
Sharma, Vivek; Sharma, Rajiv
Tema da Apresentação

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais