javaposgreeslides.pdf

50
Java com Banco de Dados Posgree Prof. Luiz Claudio Ferreira de Souza www.luizclaudiofs.blogspot.com 1

Upload: marcos-marquez-rocha

Post on 22-Sep-2015

217 views

Category:

Documents


3 download

TRANSCRIPT

  • Java com Banco de Dados Posgree

    Prof. Luiz Claudio Ferreira de Souza

    www.luizclaudiofs.blogspot.com 1

  • Driver para ligao Java e Postgre http://jdbc.postgresql.org/download.html

    www.luizclaudiofs.blogspot.com 2

  • Verificando a verso do java Instalado!

    No Gerenciador de arquivos ou com o Prompt de comando ativo digite java version

    www.luizclaudiofs.blogspot.com 3

  • Fazendo Conexo com o Postgree

    Clique em servios:

    www.luizclaudiofs.blogspot.com 4

  • Fazendo Conexo com o Postgree

    Clique com o boto direito do Mouse sobre Banco de Dados e escolha nova conexo

    www.luizclaudiofs.blogspot.com 5

  • Fazendo Conexo com o Postgree

    A janela abaixo aparecer, direcione para a pasta onde voc salvou o arquivo baixado

    www.luizclaudiofs.blogspot.com 6

  • Fazendo Conexo com o Postgree Em algumas situaes o Netbeans j possui o drive, em outras devemos instalar (adicionar) o drive baixado!

    www.luizclaudiofs.blogspot.com 7

  • Conectando ao SGDB Postgre

    www.luizclaudiofs.blogspot.com 8

  • Vamos Testar a Conexo com o Banco de Dados Postgre

    www.luizclaudiofs.blogspot.com 9

  • www.luizclaudiofs.blogspot.com 10

  • Clique no boto prximo

    www.luizclaudiofs.blogspot.com 11

  • Selecione Pblic e clique no boto Prximo, conforme abaixo

    www.luizclaudiofs.blogspot.com 12

  • Preservar o nome dado pelo Netbeans e clicar no boto Finalizar

    www.luizclaudiofs.blogspot.com 13

  • Observe a conexo com o Banco!

    www.luizclaudiofs.blogspot.com 14

  • Vamos a um exemplo de Cadastro de Cliente feito em Java com Postgre

    Inicialmente temos que criar a base de dados projetojava no Postgre utilizando a linguagem Sql

    www.luizclaudiofs.blogspot.com 15

  • Agora vamos criar a tabela usuario na base de dados projetojava

    www.luizclaudiofs.blogspot.com 16

  • Agora com a Base de Dados projetojava e a tabela usuario criadas, vamos ao java!

    www.luizclaudiofs.blogspot.com 17

  • No Netbeans vamos em arquivo e Novo Projeto

    www.luizclaudiofs.blogspot.com 18

  • Selecione Java e Aplicao Java

    www.luizclaudiofs.blogspot.com 19

  • Nome do Projeto: MinhaAplicacao, desmarque Criar Classe Principal e clique em finalizar Obs: MinhaAplicacao (Sem e sem ~)

    Escolha a pasta da localizao do projeto

    www.luizclaudiofs.blogspot.com 20

  • Agora vamos criar os pacotes ou packages

    Usamos pacotes para organizar as classes semelhantes. Pacotes, a grosso modo, so apenas pastas ou diretrios do sistema operacional onde ficam armazenados os arquivos fonte de Java e so essenciais para o conceito de encapsulamento, no qual so dados nveis de acesso as classes.

    www.luizclaudiofs.blogspot.com 21

  • Encapsulamento

    a tcnica utilizada para esconder uma ideia, ou seja, no expr detalhes internos para o usurio, tornando partes do sistema mais independentes possvel. Por exemplo, quando um controle remoto estraga apenas trocado ou consertado o controle e no a televiso inteira. Nesse exemplo do controle remoto, acontece a forma clssica de encapsulamento, pois quando o usurio muda de canal no se sabe que programao acontece entre a televiso e o controle para efetuar tal ao.

    Como um exemplo mais tcnico podemos descrever o que acontece em um sistema de vendas, aonde temos cadastros de funcionrios, usurios, gerentes, clientes, produtos entre outros. Se por acaso acontecer um problema na parte do usurio somente nesse setor que ser realizada a manuteno no afetando os demais.

    www.luizclaudiofs.blogspot.com 22

  • No Projeto criado (MinhaAplicacao) clique com o boto direito, selecione Novo, Pacote java

    www.luizclaudiofs.blogspot.com 23

  • No Nome do Pacote digite factory

    www.luizclaudiofs.blogspot.com 24

  • Criao dos Pacotes

    Da mesma forma que voc criou o pacote factory crie os pacotes:

    Modelo, Dao e Gui

    Ficando assim:

    www.luizclaudiofs.blogspot.com 25

  • Pacote e Classes

    Obs: O nome do pacote e da classe no contero caracteres utilizados na lngua portuguesa ( e ~) Factory significa fbrica e ConnectionFactory significa fbrica de conexes. Factory ser o nome do pacote e ConnectionFactory o nome da classe que far a interface com o driver JDBC de conexo a qualquer banco que desejar. Por isso o nome fbrica, pois o JDBC permite a conexo a qualquer banco: MySQL, Postgree, Oracle, SQL Server, etc., somente alterando a linha do mtodo getConnection. Vamos comear criando a classe ConnectionFactory no pacote factory. V com o boto direito at factory e clique com o boto esquerdo em Novo > Classe Java.

    www.luizclaudiofs.blogspot.com 26

  • Criando a Classe ConnectionFactory no pacote factory

    www.luizclaudiofs.blogspot.com 27

  • Criando a Classe ConnectionFactory no pacote Factory

    www.luizclaudiofs.blogspot.com 28

  • O Pacote MinhaAplicacao ficar assim:

    www.luizclaudiofs.blogspot.com 29

  • Cdigo para ser acrescentado na classe ConnectionFactory

    www.luizclaudiofs.blogspot.com 30

  • Sobre as linhas de cdigo:

    Connection con = new ConnectionFactory().getConnection();

    Note que o mtodo getConnection() uma fbrica de conexes, isto , ele cria novas conexes para ns. Basta invocar o mtodo e recebemos uma conexo pronta para uso, no importando de onde elas vieram e eventuais detalhes de criao. Portanto, vamos chamar a classe de ConnectionFactory e o mtodo degetConnection.

    www.luizclaudiofs.blogspot.com 31

  • Try e Catch Tratamento de Excees e Erros

    Umas das utilidades proporcionadas pela orientao a objetos de Java a facilidade em tratar possveis erros de execuo chamados de excees. Sempre que um mtodo de alguma classe passvel de causar algum erro, ento, podemos usar o mtodo de tentativa - o try. Tudo que estiver dentro do bloco try ser executado at que alguma exceo seja lanada, ou seja, at que algo d errado. Quando uma exceo lanada, ela sempre deve ser capturada. O trabalho de captura da exceo executado pelo bloco catch. Um bloco try pode possuir vrios blocos de catch, dependendo do nmero de excees que podem ser lanadas por uma classe ou mtodo. O bloco catch obtm o erro criando uma instncia da exceo. Portanto, a sintaxe do bloco try catch : try { // cdigo a ser executado } catch (ClasseDeExceo instnciaDaExceo) { // tratamento da exceo }

    www.luizclaudiofs.blogspot.com 32

  • Vamos criar uma classe para testar a conectividade ao Postgre, o nome da classe ser TestaConexao

    Voc poder criar a classe dentro do pacote factory

    www.luizclaudiofs.blogspot.com 33

  • Linhas de cdigo da classe TestaConexao

    www.luizclaudiofs.blogspot.com 34

  • Para executar a aplicao, antes voc ter que adicionar a biblioteca o drive do Postgre, v em bibliotecas e clique com o boto direito e selecione Adicionar JAR/Pasta Aps isso, selecione a pasta para onde voc fez o download do drive

    www.luizclaudiofs.blogspot.com 35

  • Execute a aplicao

    www.luizclaudiofs.blogspot.com 36

  • Dentro do pacote Modelo, Crie a Classe Usurio

    www.luizclaudiofs.blogspot.com 37

  • Linhas de Cdigo para a Classe Usurio

    www.luizclaudiofs.blogspot.com 38

  • Crie no Pacote DAO a classe UsuarioDAO

    Neste pacote ficam as classes que so responsveis pela Consulta, Alterao e Deleo de registros nas tabelas do Banco de Dados

    www.luizclaudiofs.blogspot.com 39

  • Linhas de cdigo da classe UsuarioDAO

    www.luizclaudiofs.blogspot.com 40

  • Linhas de cdigo da classe UsuarioDAO

    www.luizclaudiofs.blogspot.com 41

  • Nossa aplicao back-end est toda finalizada. Precisamos aprontar o front-end, isto , a interface de usurio, a classe que ser responsvel pela interao com o usurio, ou seja, o formulrio de entrada.

    No Pacote Gui, crie a Classe UsuarioGUI

    www.luizclaudiofs.blogspot.com 42

  • Classe UsuarioGUI criada no Pacote gui

    www.luizclaudiofs.blogspot.com 43

  • Com a ferramenta Painel, escolha propriedades. Clique em Borda>Borda de ttulo, intitule Cadastrar novo usurio

    Construa a interface abaixo

    www.luizclaudiofs.blogspot.com 44

  • Clique duas vezes no boto Sair para criarmos o seu evento

    Linha de cdigo para o boto:

    System.exit(0);

    www.luizclaudiofs.blogspot.com 45

  • Clicando em Shift + F6 voc poder ver como ficar sua interface!

    www.luizclaudiofs.blogspot.com 46

  • Boto Limpar

    Linhas de cdigo para o boto Limpar:

    www.luizclaudiofs.blogspot.com 47

  • Linhas de Cdigo para o Boto Cadastrar

    www.luizclaudiofs.blogspot.com 48

  • Observao!

    Certamente algumas mensagens de erro aparecero. Isto porque temos que importar no incio do cdigo as classes Usuario (pacote modelo) e UsuarioDAO (pacote dao). Alm destas, precisamos importar a classe JOptionPane, responsvel pelas janelas de validao, aquelas que aparecem dizendo se o usurio foi ou no cadastrado, se os campos esto vazios, etc.

    Coloque estas linhas no incio do cdigo, abaixo de package gui, na aba

    Cdigo-fonte:

    import modelo.Usuario; import dao.UsuarioDAO; import javax.swing.JOptionPane;

    www.luizclaudiofs.blogspot.com 49

  • www.luizclaudiofs.blogspot.com 50