A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

V Seminário RSJUG - 2006 Confraria do Java JavaDB Um Banco de Dados 100% Java Profa. Me. Karen Selbach Borges.

Apresentações semelhantes


Apresentação em tema: "V Seminário RSJUG - 2006 Confraria do Java JavaDB Um Banco de Dados 100% Java Profa. Me. Karen Selbach Borges."— Transcrição da apresentação:

1 V Seminário RSJUG - 2006 Confraria do Java JavaDB Um Banco de Dados 100% Java Profa. Me. Karen Selbach Borges

2 V Seminário RSJUG - 2006 Confraria do Java Sumário Apresentação do JavaDB Instalação Como usar via Netbeans 5.0 Passo a passo de uma aplicação desktop Como fazer a distribuição da aplicação

3 V Seminário RSJUG - 2006 Confraria do Java Introdução Cloudscape – IBM Doação dos fontes para Apache Foundation Projeto Derby Apache

4 V Seminário RSJUG - 2006 Confraria do Java Introdução Características: –Tamanho: 2 MB –100% Java –Fácil de instalar e usar –Grátis e com suporte !

5 V Seminário RSJUG - 2006 Confraria do Java Introdução Características: –API JDBC –ANSI SQL –ACID (Atomic, Consistent, Isolation, Durable) –Controle de transações –Stored procedures –Triggers –Concorrência –Backup de dados.

6 V Seminário RSJUG - 2006 Confraria do Java Introdução Onde usar: –Aplicações desktop –Aplicações web –Aplicações para dispositivos móveis, como por exemplo PDAs.

7 V Seminário RSJUG - 2006 Confraria do Java Introdução Onde conseguir : http://developers.sun.com/prodtech/javadb/ downloads/ http://developers.sun.com/prodtech/javadb/ downloads/

8 V Seminário RSJUG - 2006 Confraria do Java Como Usar Instalação : –Descompactar o arquivo javadb-10_1_1_0-fcs-bin-b01-windows-21_mar_2006.zip Não possui GUI ! Então usar via Netbeans5.0

9 V Seminário RSJUG - 2006 Confraria do Java Acesso via Netbeans - Runtime Selecione Tools > Options > Advanced Options IDE Configuration > Server and External Tools Settings > Derby Database

10 V Seminário RSJUG - 2006 Confraria do Java Acesso via Netbeans - Runtime Selecione Tools > Derby Database > Start Derby Server

11 V Seminário RSJUG - 2006 Confraria do Java Acesso via Netbeans - Runtime Selecione Tools > Derby Database > Create Derby Database...

12 V Seminário RSJUG - 2006 Confraria do Java Acesso via Netbeans - Runtime Mude para aba de Runtime e veja sua conexão com o banco de dados

13 V Seminário RSJUG - 2006 Confraria do Java Acesso via Netbeans - Runtime Através desta conexão é possível criar tabelas e executar comandos SQL

14 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação 1) Acrescentar o JavaDB ao projeto passo1passo2

15 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação 2) Criar um arquivo db.properties contendo as informações necessárias para a conexão com o banco conexao.driver=org.apache.derby.jdbc.EmbeddedDriver conexao.url=jdbc:derby:Agenda conexao.database=Agenda conexao.dir=AgendaDB URL : jdbc:derby: [propertyList] As propriedades mais comuns são: –Create=true, user=userName, password=userPassword, shutdown=true

16 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação 3) Criar um arquivo sql.properties contendo os códigos SQL necessários para as transações do banco CreateTable.Contato=CREATE TABLE APP.CONTATO (idContato INTEGER NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), nome VARCHAR(40) NOT NULL, endereco VARCHAR(50), telefone VARCHAR(20) NOT NULL) Insert.Contato=INSERT INTO APP.CONTATO (Nome, Endereco, Telefone) VALUES (?,?,?) Select.Contato=SELECT * FROM APP.CONTATO

17 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação 4) Criar a classe de conexão public static Connection getInstance(String user, String password){ if( conexao == null ) { new DBConnection(user, password); } return conexao; } private DBConnection( String user, String password ) { loadProperties(); setDBSystemDir(); if ( !dbExists() ){ createDatabase( user, password ); } else { conexao = openConnection( user, password ); }

18 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação public void loadProperties(){ int count=0; try { InputStream is = getClass().getResourceAsStream( "db.properties" ); Properties props = new Properties(); props.load( is ); driver = props.getProperty("conexao.driver"); dbName = props.getProperty("conexao.database"); url = props.getProperty("conexao.url"); dir = props.getProperty("conexao.dir"); is.close(); } catch( IOException ioex ) { System.err.println(" Erro ao carregar arquivo de propriedades "); } Classe de conexão

19 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação Classe de conexão private void setDBSystemDir() { // Obtém o diretório da aplicação String userDir = System.getProperty("user.dir", "."); // Define o caminho do diretório do banco da aplicação String systemDir = userDir + "/" + dir; // cria o diretório para o banco File fileSystemDir = new File(systemDir); if (!fileSystemDir.exists()){ fileSystemDir.mkdir(); } // Seta a propriedade que indica o banco da aplicação System.setProperty("derby.system.home", systemDir); }

20 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação private void createDatabase(String user, String password){ String tabelaContato; String tabelaEndereco; try{ url=url+";create=true"; conexao = this.openConnection(user, password); Statement stmt = conexao.createStatement(); tabelaContato = new SQLManager().loadSQL("CreateTable.Contato"); stmt.execute(tabelaContato); } catch (SQLException sqle){ System.err.println(sqle); } Classe de conexão

21 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação Classe de conexão private Connection openConnection(String user, String password) { try { Class.forName(driver); //carrega o driver. conexao = DriverManager.getConnection(url, user, password); return conexao; } catch (SQLException sqlex) { System.err.println( "Unable to connect" ); return null; } catch(ClassNotFoundException cnfex) { System.err.println(" Failed to load JDBC driver." ); return null; }

22 V Seminário RSJUG - 2006 Confraria do Java Passo a Passo de Uma Aplicação 5) Elaborar os DAOs e VOs 6) Editar o arquivo de manifesto 7) Gerar o arquivo JAR Build > Build Main Project (F11)

23 V Seminário RSJUG - 2006 Confraria do Java Referências Projeto Apache Derby http://db.apache.org/derby/ http://db.apache.org/derby/ Brian Leonard. Netbeans Derby Tutorial. http://www.netbeans.org/kb/50/derby-demo.html http://www.netbeans.org/kb/50/derby-demo.html John O'Conner. Using Java DB in Desktop Applications. http://java.sun.com/developer/technicalArticles/J2 SE/Desktop/javadb/ http://java.sun.com/developer/technicalArticles/J2 SE/Desktop/javadb/

24 V Seminário RSJUG - 2006 Confraria do Java Outras coisas interessantes Demo (Mozilla Firefox only) http://developers.sun.com/prodtech/javadb/overvie w/product_tour/readme.jsp#Download http://developers.sun.com/prodtech/javadb/overvie w/product_tour/readme.jsp#Download Derby e Hibernate http://wiki.apache.org/db-derby/HibernateHelp http://wiki.apache.org/db-derby/HibernateHelp

25 V Seminário RSJUG - 2006 Confraria do Java Dúvidas ? borges.karen@gmail.com www.confrariadojava.org/karen


Carregar ppt "V Seminário RSJUG - 2006 Confraria do Java JavaDB Um Banco de Dados 100% Java Profa. Me. Karen Selbach Borges."

Apresentações semelhantes


Anúncios Google