Modelo Cliente-Servidor

Slides:



Advertisements
Apresentações semelhantes
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Ferramenta de Desenvolvimento Material II-Bimestre Conceitos de lógica.
Advertisements

INFORMAÇÕES COMPLEMENTARES
ARQUITETURA EM CAMADAS
UNIPAC – ARAGUARI CAMPUS – IX PROF. EVERTON HIPÓLITO DE FREITAS
Vamos contar D U De 10 até 69 Professor Vaz Nunes 1999 (Ovar-Portugal). Nenhuns direitos reservados, excepto para fins comerciais. Por favor, não coloque.
Objetos Implícitos Contextuais
JSP Segundo Semestre – 2008 Professor Glaucio Bianchini
Operadores e Funções do LINGO
Exercício do Tangram Tangram é um quebra-cabeças chinês no qual, usando 7 peças deve-se construir formas geométricas.
BD em.NET: Passo a passo conexão com SQL Server 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Projeto de Sistemas de Software
PRDS - Programa de Residência em Desenvolvimento de Software Laboratório de Engenharia de Software (LES) da PUC-Rio Carlos Lucena
Alcides Calsavara JSP JavaServer Pages Alcides Calsavara
Java Server Pages (JSPs)
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
EXPRESSÕES ARITMÉTICAS
Wagner Santos C. de Jesus
Aula 4 Nomes, Vinculações, Tipos e Escopos
Prof.: Carlos Hairon R. Gonçalves
Aplicações para Web.
WebWork e JSP Keven andrade
Geração Dinâmica de Páginas com JSP Eduardo Martins Guerra Instituto Tecnológico de Aeronáutica Curso de Pós-Graduação em Engenharia de Software Programação.
Prof. Marco Aurelio N. Esteves
Classes e objetos P. O. O. Prof. Grace.
Tecnologias para Internet
Provas de Concursos Anteriores
EL e JSTL Prof. Danton Cavalcanti Franco Junior
Desenvolvimento de Projetos e Aplicações Web
Aplicativos Web Com Orientação a Objetos
Desenvolvimento WEB I Camila Nunes
Introdução ao Desenvolvimento Web
Capítulo 2 Java Servlets.
Cliente Servidor HTML JSP CSS Tomcat Servlet MySQL
Web Services Uninorte Semana de Tecnologia da Informação
Integração com Banco de Dados
JSP / Servlets Avançado
Projeto Marcas que Eu Gosto 1 PROJETO MARCAS QUE EU GOSTO Estudos Quantitativo de Consumidores Janeiro / 2005.
Configuração do Ambiente de Desenvolvimento
Conceitos de J2EE para a WEB
Aula 2 – Primeiros Passos com a arquitetura Web Servidor
Prof. Alexandre Monteiro Recife
Tópicos Especiais J2EE Prof. Cristina Valadares Curso de Ciência da Computação.
1 Servlet Prof. Alexandre Monteiro Recife. Contatos n Prof. Guilherme Alexandre Monteiro Reinaldo n Apelido: Alexandre Cordel n /gtalk:
JSP / Servlets Avançado
Olhe fixamente para a Bruxa Nariguda
Servlets e JSP Desenvolvimento de Aplicações Web
Aula 2 – Primeiros Passos com a arquitetura Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas.
Configuração do Ambiente de programação
Arquitetura das JSP - Aula 2
Aplicações Web com Orientação a Objetos
Aplicativos Web Com Orientação a Objetos – Java Server Pages(JSP) Prof. Odair
JSP JavaServer Pages Marco Antonio, Arquiteto de Software – TJDF Dezembro/2005.
Introdução a JEE Marco A. S. Reis Arquiteto de Software Abril/2011.
Programação para Web Unidade 06 – Java Beans e BDs Prof.: Henrique Santos.
Unidade 1 – Introdução a J2EE Prof.: Henrique Santos
PEC - JSP Jobson Ronan Objetivos Esta aula apresenta tudo o que é necessário para implementar servlets escrevendo JavaServer Pages.
Unidade 5 – Integrando JSP e Servlets Prof.: Henrique Santos
Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas.
Introdução à JSP JavaServer Pages Alcides Calsavara.
Programação Distribuída em Java Aula Na aula passada vimos: TomCat –Instalação e configuração –Criação de contexto JSP... uma introdução –Expressões.
Java Server Pages Um estudo de caso para aprendizagem Renata França de Pontes.
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Servidores.
Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros.
Aplicativos para Internet Prof. Wolley W. Silva
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
Desenvolvimento WEB II Aula 3 – Conexão com o Banco de Dados
Acessando banco de dados com JAVA.  Linguagem independente de plataforma; ◦ “Write once, run anywhere” ◦ JVM  Java Virtual Machine  Mecanismo que permite.
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
Servlets Manoel Neto Objetivos Aprender  Como escrever um servlet  Como compilar um servlet  Como executar Também serão.
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos
Transcrição da apresentação:

Modelo Cliente-Servidor O modelo cliente-servidor é um tipo de sistema distribuído. Neste modelo, as tarefas que o software deve realizar são divididas em dois grupos. Esta divisão implica na criação de dois sistemas. O sistema servidor e o sistema cliente. A característica principal do modelo sliente-servidor é que a comunicação, via algum protocolo, entre os sistemas por iniciativa do cliente. O objetivo do sistema servidor é atender as requisições no sistema cliente.

NetBeans NetBeans IDE é um conjunto de bibliotecas, módulos e APIs. formando um ambiente integrado de desenvolvimento visual possibilitando ao desenvolvedor complilar, debugar, efetuar deploying de suas aplicações . É um produto open source, 100% Java e possui vários módulos de expansão (modules), que podem ser baixados do próprio site http://www.netbeans.org

NetBeans Interface com o usuário – Os menus, barras de ferramentas e outros componentes UI-interfaces de apresentação são fornecidos por esta plataforma. Editor - Rico em recursos para aplicações visuais Swing ou AWT, para aplicações WEB (Servlets e JSP, JSTL, EJBs) , XML com suporte a DTDs e XML Schemas e etc. Gerenciamento – As views gerenciam a estrutura do seu projeto localmente ou remotamente, podendo também utilizar Projects. CVS, FTP ou base de dados remota. Cross-Plataform – Totalmente escrito em 100% Java, portanto multi-plataforma . Wizards - ferramentas de gerenciamento de código, criação de templates, etc.

NetBeans Workbench Área de trabalho Tutorials Tutorial Samples Exemplos

Área de Desenvolvimento Área de trabalho Projeto Área de Desenvolvimento Navegador Saida

Criando Projeto Aplicação Web Site

Criando Projeto

Line Number

Ferramentas

Alterar o Navegador

Configuração: Fonte etc

Java 2 Platform Enterprise Edition

Java 2 Platform Enterprise Edition

Java 2 Platform Enterprise Edition Arquitetura

J2EE: Programação Java para Web A tecnologia Java nos permite escrever aplicações robustas e seguras para rodar no ambiente internet. Isto é possível através da tecnologia de Java Servlets e JavaServer Pages (JSP). Servlets são classes Java que atendem às requisições HTTP. JSP são documentos HTML com código Java embutido. Eles são usados, principalmente, como interface visual com o cliente web. A arquitetura das aplicações web seguem, geralmente, o modelo de 3 camadas, como abaixo:

Java Server Pages (JSP) JavaServer Pages é uma tecnologia para geração dinâmica de conteúdo HTML. Principal tecnologia Java para a camada de interface Web. Um JSP é um arquivo texto contento conteúdo HTML e código Java. O conteúdo dinâmico é gerado a partir da execução do código Java. Quando o usuário solicita a execução de um JSP ao servidor web, este repassa a solicitação ao Container Web, o qual irá executar o JSP e retornar para o servidor web o conteúdo HTML resultante da execução do JSP.

Java Server Pages (JSP) Os elementos do JSP são definidos através de tags. "<%" e "%>" O arquivo JSP é lido pelo Container Web e convertido em código fonte Servlet, para em seguida ser compilado e executado. A conversão em código fonte Servlet e a compilação são realizadas apenas na primeira solicitação para o JSP ou quando o JSP é alterado.

Criando um Projeto Web Application

Application: index.jsp

O Tomcat O Tomcat tem suas origens no início da tecnologia Servlet. A Sun Microsystems criou o primeiro contêiner servlet, o Java Web Server, para demonstrar a tecnologia. Ao mesmo tempo, o Apache Software Foundation (ASF) criou JServ, um servlet engine que integrava com o servidor Web Apache. EM 1999, a Sum Microsystems doou o código do java Web Server para o ASF, e os dois projetos se fundiram para criar o Tomcat. A versão 3.x. Em 2001, o ASF liberou a versão 4.0 do Tomcat.

Páginas Dinâmicas JSP JavaServer Pages (JSP) são páginas Java embebidas em HTML. A página dinâmica é gerada pelo código JSP. A primeira vez que uma página JSP é carregada pelo container JSP, o código Java é compilado gerando um Servlet que é excutado. O netBeans, por padrão, ao criar um projeto Web, cria uma página JSP chamada de index.jsp. Escrever código Java em sua página JSP é bem simples, basta adicionar as tags <% %>. A isto chamamos de scriptlet.

Java Server Pages (JSP) 3. Scriplets Os Scriplets possuem objetos Java implícitos. Objeto Descrição request Objeto request HTTP response Objeto response HTTP session Sessão HTTP out Stream para o resultado do JSP exception Exceção na página de erro.

Java Server Pages (JSP) 3. Scriplets Os principais métodos dos objetos implícitos são. Objeto/Método request.getParameter(nome) response.sendRedirect(url) session.setAttribute(nome, Objeto) session.getAttribute(nome)

Objetos Implícitos Com a intenção de dar produtividade no desenvolvimento de aplicações Web usando linguagem Java, foi criado um conjunto de objetos que pode ser usado dentro de uma página JSP sem precisar de declaração. REQUEST: O objeto request provê acesso a todas as informações disponíveis requisitadas pelo usuário. OUT: O objeto out (do tipo JspWriter) é usada para imprimir caracteres, através do método write(), print() ou println().

Estrutura de JavaServer Pages Tags de abertura e fechamento código jsp <% %> Comentários: <%-- --%> /* */ Declaração de atributo ou métodos: <%! %> Expressão de um resultado: <%= %> Tags Personalizadas: <%@taglib %>

Estrutura de JavaServer Pages(JSP)

Estrutura de JavaServer Pages(JSP)

Página: index.jsp

Página: pagina2.jsp

Página: index.jsp

Página: arquivo.jsp

Página: arquivo.jsp

Página: arquivo.jsp

Página: arranjo.jsp

Página: arranjo.jsp

API Servlet A API Servlet é composta por um conjunto de interfaces e Classes. O componente mais básico da API é interface Servlet. Ela define o comportamento básico de um Servlet. public interface Servlet{ public void init (ServletConfig config) throws Servlet Exception; public ServletConfig getServletConfig(); public void service(ServletRequest req, ServletResponse res) throws ServletEsception, IOException; public String getServletInfo(); public void destroy(); }

API Servlet

API Servlet

API Servlet

API Servlet

API Servlet

API Servlet

API Servlet

API Servlet

API Servlet A classe HttpServlet foi projetada para lidar com o protocolo HTTP. public abstract class HttlServlet extends GenericServlet implements java.io.Serializable

API Servlet Todos esses métodos são invocados pelo servidor por meio do método service(). O método doGet() trata as requisições GET. Este tipo de requisição pode ser enviadas várias vezes. O método doPost() trata as requisições POST que permitem que o cliente envie dados de tamanho ilimitado para o servidor Web uma única vez. O método doPut() trata as requisições PUT. Este tipo de requisição permite que o cliente envie um arquivo para o servidor à semelhança de como é feito via FTP. O método doDelete() trata as requisições DELETE, permitindo que o cliente remova um documento ou uma página do servidor.

API Servlet

API Servlet

API Servlet

API Servlet

API Servlet

index.jsp & Servlet No arquivo index.jsp, você irá adicionar um formulário HTML. Para fazer isso, você possui duas formas: digitando ou utilizando a janela Palette como auxiliar.

Application: Servlet.java

Application: Servlet.java O Servlet possui a extensão .java. Portanto, Servlets são classes Java, desenvolvidas de acordo com uma estrutura bem definida. Servlet Container (Servidor de Aplicações Java) doGet() e doPost(). Ambos chamam processRequest(). Estes métodos possuem a habilidade de resgatar informações enviadas pelo usuário tanto pelo método GET. O Servlet estende a classe javax.servlet.http.HttpServlet, uma classe abstrata que estende a javax.servlet e javax.servlet.html, que pertencem a API Servlet do Java EE. A saída de informações, para serem impressas no HTML de retorno ao usuário, é feito pelo método println, de java.io.PrintWriter.

JDBC JDBC é a definição de uma API para acesso a banco de dados através da linguagem Java. A implementação dessa API é denominada de Driver JDBC. O Driver JDBC será o responsável pela efetiva comunicação com o SGBD. Desta forma um programa Java será independente do SGBD, bastando apenas utilizar o Driver JDBC adequado ao SGBD a ser acessado. O programa é implementado utilizando a API JDBC e no momento da sua execução as classes do Driver JDBC são utilizadas.

JDBC A API foi definida no pacote java.sql As principais classes da API JDBC são: DriverManager; Connection; Statement; PreparedStatement; CallableStatement; ResultSet; ResultSetMetaData; DatabaseMetaData; SQLException.

JDBC Utilizando a API JDBC A utilização da API requer as seguintes operações: Carga do Driver JDBC (Class.forName()); Solicitação da conexão com o Banco de Dados (DriverManager e Connection); Obtenção de objetos, a partir da conexão, para executar comandos SQL (Statement, PreparedStatement e CallableStatement); Navegação no resultado dos comando SQL (ResultSet) Tratamento das exceções que ocorrerem (SQLException). O objeto SQLException possui o método getErroCode(), o qual retorna o código de erro específico do SGBD.

Criando um Projeto Web Application: DB

Definindo Driver JDBC

index.jsp <%@ page contentType="text/html" language="java" import="java.sql.*"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Teste de Conexão</title> </head> <body> <% Connection con; Statement stm; try { Class.forName("org.gjt.mm.mysql.Driver"); con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbjava","root",""); stm = con.createStatement(); out.println("Conexão efetuada com sucesso "); } catch (Exception e) { out.println(“ERRO banco " + e.getMessage()); } %> </body> </html>

index.jsp <%@ page contentType="text/html" language="java" import="java.sql.*"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>JSP Page</title> </head> <body> <% Connection conn = null; Statement st = null; ResultSet rs = null; try{ Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbjava","root",""); out.println("OK:: Conexao com sucesso!"); st = conn.createStatement(); rs = st.executeQuery("select * from tbagenda");

index.jsp while (rs.next() ){ out.println(rs.getString("nome")); out.println(rs.getString("cidade")+"<br>"); } }catch (Exception ex){ ex.printStackTrace(); }finally { rs.close(); st.close(); conn.close(); %> </body> </html>