Programação Orientada a objetos II Rafael Perazzo B Mota Semana I Apresentação da disciplina • Objetivos: – Proporcionar aptidão ao desenvolvimento de sistemas Web orientados a objetos utilizando a tecnologia Java com plataforma J2EE com JSP e Servlets – Capacitar o desenvolvimento de aplicações dinâmicas em páginas web, utilizando os recursos que a plataforma tem a oferecer, explorando potencialmente suas propriedades e características. Conteúdo programático • • • • • • • • • • • • • Acesso a banco de dados com JDBC. Mysql. Manipulação de arquivos. Noções de HTML. Fundamentos e arquitetura de sistemas WEB. Fundamentos e arquitetura de sistemas WEB com Java. Servidores de Aplicação: GlassFish e Apache TomCat. Visão geral das tecnologias de desenvolvimento WEB: Lado cliente e lado servidor. A plataforma java J2EE. Programação de servlets. Programação com JSP. JavaMail. Prática avançada de programação para WEB. Avaliação • AV1: Prova individual com consulta (5,0) + Trabalho prático em Grupo (5,0) • AV2: Projeto e implementação de sistema web em grupo (5,0) + Apresentação para turma (5,0) Bibliografia • HALL, M.; BROWN, L.: Core Servlets e JavaServer Pages. Rio de Janeiro: Ciência Moderna, 2005. • HORSTMAN, C.; CORNEL, G.: Core Java 2 Volume 1: Fundamentos. Rio de Janeiro: AltaBooks, 2005. Recursos didáticos extras • Sistema Moodle em: – http://rafaelperazzo.hostmach.com.br/cursos – Disciplina POO II – Utilizar mesmos login e senha já cadastrados. – Código de inscrição: poo2 Ferramentas computacionais • Netbeans 6.5 (versão com J2SE, J2ME e J2EE) + Servidores de aplicação (Apache Tomcat e GlassFish) • WAMP (última versão) para gerenciamento do Banco de Dados Mysql Plataforma Java • J2EE com Servlets e JSP Elementos fundamentais • Servidor WEB e Cliente WEB • Linguagem de marcação HTML Aplicações WEB Vs Aplicações convencionais • Aplicações convencionais necessitam ser instaladas em cada máquina cliente; • Aplicações web necessitam apenas de um navegador e são instaladas em um servidor de aplicações; Tecnologias do lado cliente • A aplicação é executada pela máquina cliente (navegador WEB) e exibida na máquina cliente. – Ex: Applet, JavaScript, VbScript, ... Tecnologias do lado Servidor • As aplicações são executadas por um servidor WEB – Ex: Aplicações em PHP, Servlets, JSP, ... – Ex de servidor WEB: Apache, IIS, Tomcat, GlassFish. • O cliente solicita a página para o servidor e recebe o resultado do processamento na tela. Arquitetura Simplificada Servidor WEB Aplicações WEB JDBC Banco de Dados Clientes (Navegador WEB) PHP Vs JSP • Ambas são linguagens de script, lado servidor, geram HTML. • JSP dispõe dos recursos de orientação a objetos da linguagem Java. • PHP pode ou não utilizar recursos de OO e interage diretamente com o BD Servlets e JSP Código Fonte em Java HTML JDBC • Em Java o contato com os BDs é realizado através da JDBC, diferentemente de PHP. • As aplicações acessam o BD através do JDBC, independente do banco de dados e do sistema utilizado. Servlets e JSP • Servlets não estão embutidos em HTML. Geralmente possuem tarefa específica. – HTML em Java • JSP são misturados junto ao código HTML – Java em HTML Introdução a HTML • Linguagem de Formatação baseada em Tags. • Estrutura básica: <html> <head><title>Teste de página</title></head> <body>Pagina teste</body> </html> Exercício • Utilize o Netbeans para criar páginas HTML simples. Explore as tags disponíveis. – Ex:Negrito, italico, tamanho de fonte, links, tamanho da fonte, etc...