Capítulo 11 Java Data Base Conectivity Introdução Pacote java.sql Abrindo e fechando conexões Operações na base de dados Operações parametrizadas Transações Consultas Stored procedures Design patterns DAO e VO Projeto Final 2 Introdução Arquitetura Cliente/Servidor Cliente Cliente Servidor Oracle MS SQL Server MySql Cliente 3 Introdução JDBC O JDBC (Java Data Base Conectivity) é uma especificação elaborada pela antiga Sun para prover a acessibilidade de aplicações Java com bancos de dados. Trata-se de um padrão de acesso a dados obedecido pela indústria de bancos de dados. A fim de seguir este padrão, os fabricantes devem distribuir drivers JDBC aos desenvolvedores Java. 4 Introdução Tipos de driver APLICAÇÃO JAVA DRIVER TIPO 1 APLICAÇÃO JAVA DRIVER TIPO 2 CONFIG. ODBC COMPONENTE “CLIENT” APLICAÇÃO JAVA DRIVER TIPO 3 APLICAÇÃO JAVA DRIVER TIPO 4 MIDDLEWARE BANCO DE DADOS BANCO DE DADOS BANCO DE DADOS BANCO DE DADOS 5 Introdução Tipos de driver Tipo 1 Driver JDBC que usa a ponte de comunicação ODBC-JDBC para acessar a base pelo antigo padrão ODBC criado pela Microsoft. O ODBC trata-se de um antigo padrão de acessibilidade desenvolvido pela Microsoft que ainda pode ser utilizado no acesso a fontes de dados legadas tais como Fox Pro, DBase, Clipper, Access, etc. 6 Introdução Tipos de driver Tipo 2 Um driver se enquadra no tipo 2 quando necessita de algum software complementar instalado na estação de trabalho (máquina cliente) para acessar a base de dados. Utilizam API’s auxiliares e requerem a instalação de algum componente adicional nativo ao Sistema Operacional. 7 Introdução Tipos de driver Tipo 3 Tipo de driver que necessita de uma API de rede via middleware geralmente instalado no próprio servidor de dados para traduzir requisições para o driver desejado. Não requer nenhum software adicional no cliente além do driver JDBC. 8 Introdução Tipos de driver Tipo 4 Driver que se comunica diretamente com o banco de dados usando puramente soquetes de rede. É desenvolvido pelo fabricante totalmente em Java. Não requer código adicional do lado do cliente nem no servidor. É simples de usar e possui melhor performance que os demais tipos. 9 Introdução Alguns drivers Microsoft SQL Server JDBC Driver ○ sqljdbc4.jar MySql Connector / J ○ mysql-connector-java-5.1.20-bin.jar Oracle JDBC ○ ojdbc6.jar 10 Pacote java.sql Contém classes utilizadas no acesso e manipulação de dados externos via JDBC. 11 Pacote java.sql Statement DriverManager ResultSet PreparedStatement SQLException Connection CallableStatement 12 Abrindo e fechando conexões 13 Operações na base de dados 14 Operações parametrizadas 15 Transações 16 Consultas 17 Stored procedures 18 Design pattern DAO/VO 19 Projeto Final 20