Escolher no jComboBox, Buscar no BD e Exibir no TxtField

Boa noite. Gostaria de uma ajuda se possível.
Estou aos poucos aprendendo java e criando uma aplicação Desktop padrão MVC.
Neste momento tenho o seguinte esquema:

  1. Em um combobox listo alguns itens que já estão no BD.
  2. O Frame possui um botão Consultar.
  3. Escolho o item no Combobox e clico no botão, que deve ter a tarefa de procurar a escolha no BD e trazer as colunas daquele item
  4. Ao encontrar trazer para o TxtField cada um em seu lugar…
    exemplo:
    liga-----Ferro%----Carbono%- Impurezas%
    Aço-------95-------------4---------------1

Na ComboBox escolho Aço, clico no botão e nos txtfields traga as colunas ferro, carbono, impurezas…

Botão do Frame

    private void ConsultaligaActionPerformed(java.awt.event.ActionEvent evt) {                                             
           
    try {                
        CadastroDAO ligadao = new CadastroDAO();
        ligadao.BuscarLiga(ComboLista.getSelectedItem().toString());
        CadastrarLiga linha = new CadastrarLiga();
        nomeligatxt.setText(linha.getNomeliga());
                    
    } catch (Exception e){
        JOptionPane.showMessageDialog(null, "Erro: " + e.getMessage());
    }

    }  

DAO

        public CadastrarLiga BuscarLiga(String liga) throws SQLException{
        try {                     
       
        conectar();
        String query = "SELECT * FROM cadastroliga WHERE ligatemi like ";            
      
        PreparedStatement cmd;
        cmd = con.prepareStatement(query);
        cmd.setString(1, "'%" + liga + "%'");
       
       ResultSet rs = cmd.executeQuery();
     
       //ArrayList<CadastrarLiga> DadosLiga = new ArrayList<CadastrarLiga>();
       
       while (rs.next()) {
       
       CadastrarLiga linha = new CadastrarLiga();
       
       linha.setLigatemi(rs.getString("ligatemi"));
       linha.setNomeliga(rs.getString("nomeliga"));
       linha.setDureza(rs.getString("dureza"));
       linha.setDensidade(rs.getDouble("densidade"));
       linha.setSae(rs.getString("sae"));
       linha.setAstm(rs.getString("astm"));
       linha.setDin(rs.getString("din"));
       linha.setUns(rs.getString("uns"));
       linha.setCu(rs.getString("cu"));
       linha.setZn(rs.getString("zn"));
       linha.setSi(rs.getString("si"));
       linha.setFe(rs.getString("fe"));
       linha.setAl(rs.getString("al"));
       linha.setPb(rs.getString("pb"));
       linha.setSn(rs.getString("sn"));
       linha.setNi(rs.getString("ni"));
       linha.setMn(rs.getString("mn"));
       linha.setCo(rs.getString("co"));
       linha.setP(rs.getString("p"));
       linha.setArs(rs.getString("ars"));
       linha.setSb(rs.getString("sb"));
       linha.setExpb(rs.getString("expb"));
       linha.setExpbni(rs.getString("expbni"));
        /* Armazena a linha lida em uma lista */
       //DadosLiga.add(linha);         
       
       
       }   
       rs.close();
       return ;
       } catch (Exception e) {
        System.out.println("Erro " + e.getMessage());
        throw e;
       }finally{
        comando.close();
        con.close();
        
       }
       }       

Poderiam me dar uma força ?

no trecho :

String query = "SELECT * FROM cadastroliga WHERE ligatemi like "; 

não deveria haver uma “?” para que o setString funciona na query

ficaria assim

String query = "SELECT * FROM cadastroliga WHERE ligatemi like ? ";