Java 选中jComboBox中的项时,从数据库中选择jComboBox项并填写jTextfield

Java 选中jComboBox中的项时,从数据库中选择jComboBox项并填写jTextfield,java,swing,netbeans,jcombobox,Java,Swing,Netbeans,Jcombobox,我试图通过连接到其他表来加载JcomboBox,其中的项是来自表1的id、来自表2的名称、来自表1的贷款日期。当我从JcomboBox中选择项目时,我想用表1中的贷款金额填充JTextField 这是我的loadCombo public void loadComboGadai() { try { comboDataGadai.removeAllItems(); comboDataGadai.addItem("-- Pilih --"); s

我试图通过连接到其他表来加载JcomboBox,其中的项是来自表1的id、来自表2的名称、来自表1的贷款日期。当我从JcomboBox中选择项目时,我想用表1中的贷款金额填充JTextField

这是我的loadCombo

public void loadComboGadai() {
    try {
        comboDataGadai.removeAllItems();
        comboDataGadai.addItem("-- Pilih --");
        sql = "SELECT * FROM gadai INNER JOIN nasabah ON gadai.ktp_gadai = nasabah.ktp";
        res = stat.executeQuery(sql);
        while(res.next()) {
            String no_Gadai = res.getString("no_gadai");
            String nama_Nasabah = res.getString("nama_nasabah");
            String jatuh_tempo = res.getString("jatuh_tempo");
            comboDataGadai.addItem(no_Gadai+" : "+nama_Nasabah+" : "+jatuh_tempo);
        }


    } catch (Exception e) {
    }
}
这是从组合中获取数据

public void getGadai() {

    try {
        if (comboDataGadai.getSelectedIndex() > 0) {
        comboDataGadai.setSelectedIndex(-1);
        sql = "SELECT * FROM gadai INNER JOIN nasabah ON gadai.ktp_gadai = nasabah.ktp";
        res = stat.executeQuery(sql);
        if (res.next()) {
            String jumlah_Tebusan = res.getString("jumlah_tebusan");
            txtJumlahTebusan.setText(jumlah_Tebusan);
        }

    }
    } catch (Exception e) {
    }
}

我唯一能做的评论就是不要使用空的catch块。如果出现SQL错误,应该显示异常。不要使用
String
保存所有数据,而是创建一个可以保存单个属性的POJO。然后使用
ListCellRenderer
修改
JComboBox
渲染这些POJO的方式。选中后,可以获取所选POJO的实例,并相应地更新文本字段