Ajuda com conexão com banco de dados

8 respostas
R
package agenda;

public class Agenda {
	   private int id;
	   private String primeiroNome;
	   private String ultimoNome;
	   private String email;

   	   public int getId() {
		   return id;
   	   }

	   public void setId(int id) {
		   this.id = id;
	   } 

	   public void setPrimeiroNome(String nome) {
	      primeiroNome = nome;  
	   }
	   
	   public String getPrimeiroNome() {
	      return primeiroNome;  
	   }

	   public void setUltimoNome(String nome) {
	      ultimoNome = nome;  
	   }

	   public String getUltimoNome() {
	      return ultimoNome;  
	   }

	   public void setEmail(String email) {
	      this.email = email;
	   } 

	   public String getEmail() {
	      return email;  
	   }
}
package agenda;

import java.sql.*;
import java.util.ArrayList;

public final class AgendaData {
   static final String JDBC_DRIVER = "org.postgresql.Driver";
   static final String DATABASE_URL = "jdbc:postgresql://localhost:5432/postgres";
   private static Connection conn;
   
   public AgendaData() {
	   this.conecta();
   }

   public void conecta() {
	  try {
	       Class.forName(JDBC_DRIVER);
	       conn = DriverManager.getConnection (DATABASE_URL, "root", "havok100");
          }
	  catch (ClassNotFoundException e) {
	       System.out.println("Driver de conexão não encontrado.");
	  }
      catch (SQLException e) {
    	  System.out.println("Erro na conexão com o banco.");
      }
   }

   public void fechaconexao() {
      try {
           conn.close();
          }
      catch (SQLException erro) {
    	  System.out.println("Erro ao fechar conexão com o banco.");
          }
   }

   public ArrayList<Agenda> getAgendaList() {
      ArrayList<Agenda> agendaList = new ArrayList<>();
      Statement s = null;
      ResultSet rs = null;

      if (conn != null) {
          try {
               s = conn.createStatement();
               rs = s.executeQuery("SELECT * FROM agenda");
               while (rs.next()) {
                   Agenda agenda = new Agenda();
                   agenda.setId(rs.getInt("id"));
                   agenda.setPrimeiroNome(rs.getString("primeironome"));
                   agenda.setUltimoNome(rs.getString("ultimonome"));
                   agenda.setEmail(rs.getString("email"));
                   agendaList.add(agenda); 
                  }
              }
          catch (SQLException sqlException) {
        	  System.out.println("Ocorreu uma exce&#65533;&#65533;o SQL");
              }
          catch (Exception exception) {
        	  System.out.println("Ocorreu uma exce&#65533;&#65533;o");
              }
          finally {
               try {
                    if (rs != null) rs.close();
                    if (s != null) s.close();
                   }
               catch (Exception exception) {
            	   System.out.println("Ocorreu uma exce&#65533;&#65533;o SQL");
                   }
              }
         }
      return (agendaList);
   } 
   
   public boolean addAgenda(Agenda agenda) {
	      Statement s = null;
	      ResultSet rs = null;
	      int iQtdRegAfetados = 0;

	      if (conn != null) {
	          try {
	               s = conn.createStatement();
	               iQtdRegAfetados = s.executeUpdate("INSERT INTO agenda " +
	            	   "(primeironome, ultimonome, email) VALUES ('" +
                       agenda.getPrimeiroNome() + "', '" + 
                       agenda.getUltimoNome() + "', '" +
                       agenda.getEmail() + "')");
	              }
	          catch (SQLException sqlException) {
	        	  System.out.println("Ocorreu uma exceção SQL");
	              }
	          catch (Exception exception) {
	        	  System.out.println("Ocorreu uma exce&#65533;&#65533;o");
	              }
	          finally {
	               try {
	                    if (rs != null) rs.close();
	                    if (s != null) s.close();
	                   }
	               catch (Exception exception) {
	            	   System.out.println("Ocorreu uma exce&#65533;&#65533;o SQL");
	                   }
	              }
	         }
         return iQtdRegAfetados > 0;
   } 
}
package agenda;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class TestaAgenda {
	private static Scanner scanner = new Scanner(System.in);
	private static AgendaData agendadata = new AgendaData();

	public static void main(String[] args) {
		int opcao = 0;
		
		while (opcao != 9) {
			System.out.println("--------------");
			System.out.println("(1) Cadastrar");
			System.out.println("(2) Listar");
			System.out.println("(0) Sair");
			System.out.println("OP&#65533;&#65533;O: ");
			opcao = scanner.nextInt();
			
			switch (opcao) {
			   case 1: cadastrar(); break;
			   case 2: listar(); break;
			   case 0: opcao = 9; break;
			   default: System.out.println("Op&#65533;&#65533;o inv&#65533;lida.");
			}
		}
		agendadata.fechaconexao();
		System.out.println("Programa encerrado.");
	}
	
	public static void cadastrar() {
		String primeironome, ultimonome, email;
		char resposta;
		Agenda agenda = new Agenda();
		scanner = new Scanner(System.in);

		System.out.println("Primeiro nome: ");
		primeironome = scanner.nextLine();

		System.out.println("Sobrenome: ");
		ultimonome = scanner.nextLine();

		System.out.println("E-mail: ");
		email = scanner.nextLine();

		agenda.setPrimeiroNome(primeironome);
		agenda.setUltimoNome(ultimonome);
		agenda.setEmail(email);

		System.out.println("Confirma (S/N)? ");
		resposta = scanner.next().toUpperCase().charAt(0);

		if (resposta == 'S' && agendadata.addAgenda(agenda))
			System.out.println("Gravado com sucesso.");
	}

	public static void listar() {
		List<Agenda> lista = new ArrayList<>();
                lista = agendadata.getAgendaList();
		System.out.println("---------- Listagem\n");

		for (Agenda i: lista) {
			System.out.println(i.getPrimeiroNome() + ", " + 
					           i.getUltimoNome() + ", " + 
					           i.getEmail());
		}
		System.out.println("\n---------- Fim listagem <ENTER>");
		scanner = new Scanner(System.in);
		scanner.nextLine();
	}
}

alguem me informá que tipo de tabelas criar para eu me conectar
post grees

obrigado.

8 Respostas

Gleidson_Henrique

Nao entendi sua duvida amigo… que tipo de tabelas a criar?

O nome da tabela que voce usou foi ‘agenda’ e o nome do db foi ‘postgres’…

Se for isso que tu queria saber… rsrs

Abraços

gustavocoolt

qual sua dúvida cara?

R

crio as tabelas no banco maass
sempre da falha na conexão com o banco de dados

Ruttmann

robertorp:
crio as tabelas no banco maass
sempre da falha na conexão com o banco de dados

Coloca aqui também o erro que tá dando. A principio tá tudo certo com suas classes…

D

[list][/list]

Gleidson_Henrique

robertorp:
crio as tabelas no banco maass
sempre da falha na conexão com o banco de dados

Voce esta usando o banco de dados chamado postgres mesmo ou voce criou um banco?

Abraços

marcospaulo.suporte

Também não entendi sua duvida…
Seu banco ta criado certo? vc ja tem as tabelas no banco correto?

Quer comunicar com ele? isso??

Que mensagem aparece na tela?
o debugger mostra alguma coisa?(erro?)

gustavocoolt

posta o erro que certamente vc terá ajuda…

Criado 24 de setembro de 2012
Ultima resposta 25 de set. de 2012
Respostas 8
Participantes 6