Como fazer uma busca de acordo com o id pego do jComboBox e mostrar os resultados da busca em JtextField?

estou tentando fazer uma busca no bd de acordo com o id que pego em uma jComboBox e mostrar eles em jTextField separadas, mas travei nisso ai, onde coloco pra setar o id para realizar a busca?

public TelaCompraPassagem(java.awt.Frame parent, boolean modal) {
super(parent, modal);
initComponents();
this.preencerBox();
jcViagem.addActionListener((ActionEvent e) -> {
Viagem vs = new Viagem();
String[] split = jcViagem.getSelectedItem().toString().split("-");
String ids = split[1];

        jtLocalPartida.setText(vs.getLocalPartida());
        jtLocalDestino.setText(vs.getLocalDestino());
        jtData.setText(vs.getDtViagem());
        jtDuracao.setText(vs.getTempoDuracao());
        jtPreco.setText(String.valueOf(vs.getValorPassagem()));
    });
}

public void readcbViagem() {
    ViagemDao vdao = new ViagemDao();
    for (Viagem v : vdao.buscar()) {
        
            
            v.getDtViagem();
            v.getTempoDuracao();
            v.getLocalPartida();
            v.getLocalDestino();
            v.getValorPassagem();
    }
}

public void preencerBox(){
    Connection con = ConnectionFactory.getConnection();
    PreparedStatement stmt = null;
    ResultSet resultado = null;
    
    try{
        stmt = con.prepareStatement("SELECT * FROM tb_Viagem");
        resultado = stmt.executeQuery();
        while(resultado.next()){
        jcViagem.addItem(resultado.getString("idViagem")+" - "+resultado.getString("localPartida")+" x "+resultado.getString("localDestino"));
        }
   
    }catch (SQLException ex) {
        JOptionPane.showMessageDialog(null, "Erro ao cadastrar!" + ex);
    } finally {
        ConnectionFactory.closeConnection(con, stmt, resultado);
    }
}

Classe Dao onde fiz o metodo de busca::

public List buscar() {

    Connection con = ConnectionFactory.getConnection();
    PreparedStatement stmt = null;
    ResultSet resultado = null;

    List<Viagem> viagens = new ArrayList<>();

    try {
        stmt = con.prepareStatement("SELECT * FROM tb_Viagem WHEDE idViagem = ?");
        stmt.setLong(1, Long.parseLong("idViagem"));
        resultado = stmt.executeQuery();
        while (resultado.next()) {

            Viagem viagem = new Viagem();
            viagem.setLocalPartida(resultado.getString("localPartida"));
            viagem.setLocalDestino(resultado.getString("localDestino"));
            viagem.setDtViagem(resultado.getString("dtViagem"));
            viagem.setTempoDuracao(resultado.getString("tempoDuracao"));
            viagem.setValorPassagem(resultado.getDouble("valorPassagem"));
            viagens.add(viagem);
        }

    } catch (SQLException ex) {
        JOptionPane.showMessageDialog(null, "Erro ao cadastrar!" + ex);
    } finally {
        ConnectionFactory.closeConnection(con, stmt, resultado);
    }
    return viagens;
}

O que você quer dizer com isso? Quem vai setar o ID (o usuário ou algum código, e se for um código, qual código deveria fazer isso)?

então, é onde o codigo vai setar o id pego na JcomboBox e manda-lo para o banco para fazer a busca e retornar em JTextField’s.

Então quem define o id é o usuário, que o define no JComboBox, e vc precisa pegar esse id do JComBox? É isso?

quase, vou explicar mais um pouco do contexto todo;
estou fazendo um trabalho para o curso tecnico, onde estou fazendo um sistema para uma empresa que realiza viagens de onibus… o id no caso é o id da viagem que é definido pelo admin.
estou fazendo uma tela de compra de passagens para a viagem, nessa tela tem uma jComboBox que contem todas as viagens cadastradas,onde aparace o id, local de partida e local de destino(“idViagem”+"-"+localPartida+“x”+localDestino), e ao usuário selecionar uma viagem o sistema tem que tem que trazer todas as informacoes da viagem para JTextFiels separadas(ex: jtData = dtViagem).
Ja utilizei o metodo split e consegui separar o id do combobox e armazenar em uma string, agora so falta colocar esse id para buscar o resto dos dados no banco

Certo, então vc tem o “id” como String já acapturado do ComboBox. Pra converter pra Integer (se necessário) é só usar int id = Integer.parseInt(id);

Agora, sua dúvida é como obter todos os dados necessários do Banco de Dados buscando-os pelo id?

Sim isso mesmo, a conversão na verdade é para long, mas eu ja realizei a conversão

Hum, se vc ainda não consegue ler os dados do BD e jogá-los em suas variáveis, recomendo um tutorial básico de BD com Java, rapidinho vc aprende a fazer isso.

Depois de colocar os dados obtidos em variáveis, basta colocar os dados delas nos JTextFields usando “textField.setText(valorObtidoDoBD);”.

tem algum link para me recomendar ai?