Java e MYSQL

6 respostas
R

Olá galera, sou iniciante em java e estou tentando fazer com que o java realize uma exibição das coisas que tenho em meu BD. Por algum motivo está dando erro, o código segue abaixo:

Classe Principal:

import java.io.*;

class Principal{

public static void main (String [] args)throws java.io.IOException {

BufferedReader leitura = new BufferedReader( new InputStreamReader(System.in));
System.out.println("********************************");
System.out.println("       Agenda Telefonica        ");
System.out.println("********************************");
System.out.println("Escolha a opção:");
System.out.println(" ");
System.out.println("1 - Adicionar ");
System.out.println("2 - Excluir ");
System.out.println("3 - Exibir ");
System.out.println("4 - Alterar ");
System.out.println("5 - Atualizar ");

String s = leitura.readLine();
int x = Integer.parseInt(s);

switch (x)
{
/*case 1:
	Cadastro.Adicionar();
break;
	Excluir e = new Excluir();
break; */
case 3:
	Cadastro.Exibir();
break;
/*case 4:
	Alterar al = new Alterar();
break;
case 5: 
	Atualizar at = new Atualizar();
break; /*/
}

}
}

e a classe Cadastro:

import java.sql.*;

class Cadastro{

public static void Exibir (String []args){
String comand;
comand = "select * from contatos;";
Connection con = Conector.getTestConnection();
    PreparedStatement stmt = null; 
    try
        {
            stmt = con.prepareStatement(comand);
		}
		catch(Exception e)
		{         
		e.printStackTrace(); 
		} 
		
		finally 
		
		{	         
		try {           
		con.close();         
		} 
		catch (Exception onConClose) {           
		onConClose.printStackTrace();         
		}
		}
		
}

}

obs.: Quando eu tento compilar a classe “Principal” da um erro: “Principal.java:58: Exibir(java.lang.String[]) in Principal cannot be applied to()”. Por que está ocorrendo esse erro?

6 Respostas

maiconramones

Opa, isso acontece porque tu definiu que o método Exibir irá receber um array([]) de Strings e na classe principal tu está chamando o método sem passar nada como parâmetro…

Dica: quando for postar código fonte no guj utilize a tag code

P

randy ,

Isto esta acontecendo porque o metodo exibir da classe Cadastro, esta esperando parametros na sua chamada.

public static void Exibir (String []args)

e quando vc faz a chamada na classe Principal, vc não passa nehnum paramento.
Alias, o parametro do metodo exibir não é utilizado, assim vc pode remove-lo.

Outra consideração.
Parece que vc copiou o toda a assinatura do metodo main.

public static void Exibir (String []args)

procure saber o porque de cada “comando” da assinatura deste metodo.

R

Retirei o “String [] args” e o programa rodou, mas não exibiu nada. Tem como exibir os registros do BD no próprio DOS?Se sim, qual o comando, ou a sintaxe?

Desde obrigado.

R

randy hickey:
Retirei o “String [] args” e o programa rodou, mas não exibiu nada. Tem como exibir os registros do BD no próprio DOS?Se sim, qual o comando, ou a sintaxe?

Desde já, obrigado.

maiconramones

Primeiro, pra executar os comandos no banco tu possui dois métodos básicos com PreparedStatement que são eles:

  • executeUpdate -> para insert, delete e update
  • executeQuery -> para select

No seu caso é executeQuery, mas dê uma pesquisada aqui no GUJ sobre JDBC.

R

vou procurar mais sobre isso, obrigado. :slight_smile:

Criado 28 de fevereiro de 2008
Ultima resposta 28 de fev. de 2008
Respostas 6
Participantes 3