Conversão JTextField para String

6 respostas
diogofabri

Olá pessoal,
Como estou iniciando a programação em Java, estou com uma duvida muito simples
Preciso converter uma variavel declarada como JTextField para uma String.
Depois disso preciso verificar se existe no banco de dados.

private JTextField nomeTF1;
String teste;
ResultSet Resultados = InstrucaoSelectSQL.executeQuery("SELECT Nome,Estado,Sexo,Endereco,Cidade,Cep FROM Pessoa");
				
			   if((teste = nomeTF1.getText().toString()) == Resultados.getString(1))
			   {
			   
			   while (Resultados.next())
                {
                	String Nome = Resultados.getString(1).trim();
                   	String Estado = Resultados.getString(2).trim();
                   	String Sexo = Resultados.getString(3).trim();
					String Endereco = Resultados.getString(4).trim();
                	String Cidade = Resultados.getString(5).trim();
                	String Cep = Resultados.getString(6).trim();

Tentei a conversao deste modo, mas nao funcionou.
Peço ajuda para solucionar este problema,
Obrigado!

6 Respostas

spadinha

teste como jTextField.getText().trim().equals(stringDoBanco)

FelipeGeorge13

Brother, o metodo getText() da classe JTextField já retorna uma string, vc deve convertê-lo caso queira um inteiro, double, etc. caso vc queira transformar um JComboBox em string basta fazer um casting…
no mais eh só!

berg.pb

bem, vc não pode cmparar Strings como ‘==’. Vc terá q usar o a função interna do String ‘equals()’ ou ‘equalIgnoreCase()’.

Eu faria assim o seu cógido:

private JTextField nomeTF1;  
String teste = nomeTF1.getText().toString();  
ResultSet Resultados = InstrucaoSelectSQL.executeQuery("SELECT Nome,Estado,Sexo,Endereco,Cidade,Cep FROM Pessoa");  
                   
                if(teste.equalsIgnoreCase(Resultados.getString(1)))
                {  
                  
                while (Resultados.next())  
                 {  
                     String Nome = Resultados.getString(1).trim();  
                     String Estado = Resultados.getString(2).trim();  
                     String Sexo = Resultados.getString(3).trim();  
                     String Endereco = Resultados.getString(4).trim();  
                     String Cidade = Resultados.getString(5).trim();  
                     String Cep = Resultados.getString(6).trim();  
                }
}

Valeu

diogofabri

Agradeço pelas dicas....
mas não ta dando certo!!!!
Esse metodo estaria dentro de um Try, e o resultado é que
cai sempre no catch!
Nao sei pq..............

Tem uma função que cria a tabela:

void CriaTabelaDados()
     {
          System.out.println("Carregando o driver JDBC ODBC...\n\n");
          try
          {
               Class.forName("com.mysql.jdbc.Driver");
          }
          catch(ClassNotFoundException Erro)
          {
               System.out.println("Não e possivel carregar o driver...\n\n");
          }
          try
          {
               Connection Conexao = DriverManager.getConnection(URL, USE, SENHA);
               Statement FluxoSQL = Conexao.createStatement();
               String InstrucaoSQL = "CREATE TABLE Pessoa (Nome CHAR(35), Estado CHAR(2), Sexo CHAR(1), Endereco CHAR(35), Cidade CHAR(30), Cep CHAR(10))";//crie a tabela pessoa com:
               FluxoSQL.executeUpdate(InstrucaoSQL);
               System.out.println("Instrução SQL executada com sucesso...Tabela criada...\n\n");
               FluxoSQL.close();
               Conexao.close();
               System.out.println("Conexão encerrada...\n\n");
          }
          catch(SQLException Erro)
          {
               System.out.println("Não foi possível conectar-se à Base de Dados e criar a tabela...\n\n");
          Erro.printStackTrace();
          }
     }

E a função que Consulta a tabela no banco é:

public void ConsultaTabelaDados()
	{
		int j=0;	
		
         System.out.println("Carregando o driver JDBC ODBC...\n\n");
          try
          {
               Class.forName("com.mysql.jdbc.Driver");
          }
          catch(ClassNotFoundException Erro)
          {
               System.out.println("Não e possivel carregar o driver...\n\n");
          Erro.printStackTrace();
          }
          try
          {
               Connection Conexao = DriverManager.getConnection(URL, USE, SENHA);
               Statement FluxoSQL = Conexao.createStatement();
               Statement InstrucaoSelectSQL = Conexao.createStatement();
               ResultSet Resultados = InstrucaoSelectSQL.executeQuery("SELECT * FROM Pessoa");
			   String teste = nomeTF1.getText().toString();;	
			   //if((teste = nomeTF1.getText().toString()) == Resultados.getString(1))
			   if(teste.equals(Resultados.getString(1)))  
               {
			   
			   while (Resultados.next())
                {
                	String Nome = Resultados.getString(1).trim();
                   	String Estado = Resultados.getString(2).trim();
                   	String Sexo = Resultados.getString(3).trim();
					String Endereco = Resultados.getString(4).trim();
                	String Cidade = Resultados.getString(5).trim();
                	String Cep = Resultados.getString(6).trim();
                	
                	nomeTF1.setText(Nome);                
                	estadoTF1.setText(Estado);                
                	sexoTF1.setText(Sexo);                
                	enderecoTF1.setText(Endereco);
                	cidadeTF1.setText(Cidade);
                	cepTF1.setText(Cep);                             					
						
						System.out.println("Nome  = " + nomeTF1);                   		
                  		System.out.println("Estado = " + estadoTF1);
                  		System.out.println("Sexo = " + sexoTF1);
                  		System.out.println("Endereco = " + enderecoTF1);
                  		System.out.println("Cidade = " + cidadeTF1);                 		
                  		j++;                	          
                  				                  
                }
			   }            
               else 
               	System.out.println("Registro não encontrado!!!");
               
                System.out.println("\nResultados Encontrados = " + j); 		

                System.out.println("\n\nInstrução SQL executada com sucesso...");
                InstrucaoSelectSQL.close();

                Conexao.close();
                System.out.println("Conexão encerrada...\n\n");
          }
          catch(SQLException Erro)
          {
               System.out.println("Não foi possível conectar-se à Base de Dados e criar a tabela...\n\n");
	      Erro.printStackTrace();
	      }
	}
diogofabri

E a ação nos botões é a seguinte:

Inserir:

butCriarTabela.addActionListener(         
           new ActionListener()
                    {
                              public void actionPerformed(ActionEvent e)//se clicar executa a açao.
                              {
                                 CriaTabelaDados();//cria a tabela no banco
                                 butSalvar.setEnabled(true);//ativa o salvar
                              }

                    } );

Consultar:

butConsultar.addActionListener(
                    new ActionListener()
                    {
                              public void actionPerformed(ActionEvent e)//se clicar executa a açao.
                              {                                                               
                                  ConsultaTabelaDados();                                                                                       
                              }

                    } );
diogofabri

Espero ter sido claro!

Criado 14 de junho de 2008
Ultima resposta 15 de jun. de 2008
Respostas 6
Participantes 4