Consulta uma tela em java [RESOLVIDO]

Ola meus caros amigos, tudo bem? no meu programa de estoque que estou fazendo em desktop tenho que fazer uma consulta para o meu banco de dados para mostrar na tela todas as informações do tombamento que esta cadastrado no sistema!
Exemplo seria computador com tombo 1110, ele iria mostrar para mim todas as informoções deste computador com esse tombo…

obrigado pela atenção

[quote=kerbage]Ola meus caros amigos, tudo bem? no meu programa de estoque que estou fazendo em desktop tenho que fazer uma consulta para o meu banco de dados para mostrar na tela todas as informações do tombamento que esta cadastrado no sistema!
Exemplo seria computador com tombo 1110, ele iria mostrar para mim todas as informoções deste computador com esse tombo…

obrigado pela atenção

[/quote]

Olha não intendi sua duvida, porém o programa vai exibir o que você mandar exibir vc da um select no banco e pega o que retornar por resultSet e exibe da forma que voce quiser.

ola! bem mais como faço para ele ser mostrado nos jtextfield que criei, tipo nome e data!

obrigado

textfield.setText(…);

Faala brow…

Bom, pra comecar, voce precisa recuperar o registro do banco…
Voce pode usar Hibernate ou fazer “no braco”, com conexao junto ao banco
e PreparedStatement, por exemplo.

Quando conseguir recuperar o objeto do campo, fica facil:

// Algo como...
jtextfield01.setText(objeto.getNome());
jtextfield02.setText(objeto.getData());

E por ai vai…
Lembrado que precisar fazer algumas conversoes de numeros para
string, formatar datas e tudo mais.

Abraco!

beleza… eu posso fazer assim?

String sql = "Select * from cad_esoque Where tombo"+'?'" resullset.executeQuery(sql); jtextfield01.setText(objeto.getNome()); jtextfield02.setText(objeto.getData());

Fala brow,

Aqui tem um exemplo, da uma lida

http://www.guj.com.br/posts/list/40126.java

Abraco!

certo,mas no caso, a informação que virá do banco, terá quantas linhas??
instancia o ResultSet
se for mais que uma vc pode colocar dentro de um while(ResultSet.lenght)
ai vc dá um

ResultSet.getString("Nome") ResultSet.getString("Data")
abçsssss

eu já tinha criado uma tabela informando os valores que são gravados no sistema, o meu problema agora é puxar o tombo do equipamento e mostrar todo o seu histórico nos jtextfield que criei que são os campos nome,origem,destino,situação,data e o proprio tombo…
existe dois campos tombo que são tombo cadastro e pesquisa_tombo, é nesse pesquisa_tombo que quero puxar todos valores atribuitos a ele.

vitoryudi eu não posso consultar diretamente esse objeto, tenho que criar uma referência para ele para acessar a resultset!
exemplo:

resultset = rs. rs.getString("Nome") rst.getString("Data")

[code]

   conexao conecta_estoque; //cria o objeto conexao

   conecta_estoque=new conexao();//inicializa a classe de conecxão
   conecta_estoque.conecta();//conecta ao banco

  conecta_estoque.executaSQL("select * from TB_estoque order by "+ordem);
   String ordem="campo";//aq vai a chave primaria da sua tabela


  public void mostrar_dados()
  {
      try
      {
  
         tf_campo.setText(conecta_estoque.resultset.getString("campo"));
         tf_nome.setText(conecta_estoque.resultset.getString("nome"));
         tf_origem.setSelectedItem(conecta_estoque.resultset.getString("origem"));
     }
      catch(SQLException erro)
    {
         
          JOptionPane.showMessageDialog(null,"Não localizou dados"+erro);
           
       
      }
    
}[/code]

Depois chame o metodo mostrar_dados(),onde vc quiser…

Você já deve ter sua classe,então acho que tem que adaptar ao seu código,talvez, usando só o select e metodo mostrar_dados mesmo…

oi Anime tudo blz!
bem o esse conecta_estoque=new conexao(); conecta_estoque.conecta();

bem o que ele faz. tenho criar uma conexao para o banco de dados

obrigado

:oops: respondi usando o mesmo código,se vc não tem a classe para fazer conexão,então deve criar sim…

não entendi, vc pode por favor explicar para mim o seu codigo…
beijos

Vc tem uma classe que faz a conexão?

sim, e a classe conexao que esta conectando com o con_impressoras.

Não entendi bem,mas vou supor que o nome da sua classe é conexao e o objeto é o con_impressoras.

Então é só vc substituir.

[code]

     conexao con_impressoras; //cria o objeto conexao  (se vc já tem não precisa criar novamente)
  
    con_impressoras=new conexao();//inicializa a classe de conecxão  
    con_impressoras.conecta();//conecta ao banco  
  
    con_impressoras.executaSQL("select * from TB_estoque order by "+ordem);  //coloque o nome da sua tabela no lugar de TB_estoque
    String ordem="campo";//aq vai a chave primaria da sua tabela  
  

     public void mostrar_dados()  
    {  
     try  
    {  

       tf_campo.setText(con_impressoras.resultset.getString("campo"));  
       tf_nome.setText(con_impressoras.resultset.getString("nome"));  
       tf_origem.setText(con_impressoras.resultset.getString("origem"));  // aq havia um erro,não sei se vc percebeu
    }  
     catch(SQLException erro)  
    {  
  
         JOptionPane.showMessageDialog(null,"Não localizou dados"+erro);  
    } 

} [/code]

Vou deixar um outro exemplo,é claro que vc tem que analisar e fazer algumas modificações de
acordo com seu projeto :slight_smile:



package bancodedados;
import java.sql.*;
/**
 *
 * @author 18693
 */
public class ConsultaBDCurso 
{
public static void main(String [] args)
    {
      BDConecta obj=new BDConecta();
      Connection idcon=null;
      ResultSet consulta=null; //objeto q guarda resultado de uma consulta
      idcon=obj.conexaoBD("fontetarde");
      if(idcon != null)
        {
          //-----------------
          //consultar uma tabela atraves de um comando sql
          //classe para comando: Statement
          try
          {        
          Statement cmdsql = idcon.createStatement();
          consulta = cmdsql.executeQuery("SELECT*FROM tbCurso");//consulta
          while(consulta.next())//enquanto tiver proximo registro
          {
              System.out.print(consulta.getString("idCurso"));
              System.out.println("\t"+consulta.getString("nomeCurso"));
          }
          cmdsql.close();
          System.out.println("Consultar a tabela ok");
          }
          catch(SQLException ex)
          {
              System.out.println("Erro em consultar a tabela");
          }
          obj.desconexaoBD(idcon);
        }    
    }
}

Nunca acesse os objetos de acesso a banco como resultset’s na tela do usuário, crie pelo menos uma camada composta de objetos que representem os dados contidos na tabela que você está pesquisando. Nesse caso o teu código de tela fica desacoplado do código do banco de dados.
Dê uma olhada nos padrões DAO (Data Acess Object, considerado por alguns obsoletos, porém o que possui menor curva de aprendizado) e repository (fazendo uso de frameworks como hibernate com critéria), dessa forma você já tem pronto o model do seu MVC (Model View Controller - inclusive estude esse padrão até dizer chega :slight_smile: ). Depois disso pronto faça como eu disse pegue os objetos gerados pelo DAO ou repository e os passe para a visão por meio do controller (nesse caso não temos bem um MVC mais sim um MVP que significa Model View Presenter que é outro assunto importante para estudar também).
O caminho parece longo mais certamente é o melhor, caso você queira desenvolver código de qualidade. :slight_smile:

Lembrei e uma apostila que me indicaram,da uma olhada na parte de BD…

http://downloads.caelum.com.br/apostila/caelum-java-web-fj21.pdf

pessoal obrigado pela atenção e com certeza vou pegar as dicas de vocês meus colegas e estudar, pois tenho ainda um caminho longo pela frente! Anime eu vou fazer as alterações e lhe dou um retorno…
Aline o seu codigo rodou ai normal?

obrigado
um abraço