更新对模型元素(jlist)所做的更改到mysql数据库,问题

时间:2012-12-13 17:16:23

标签: java mysql swing jlist defaultlistmodel

请记住我是一个业余爱好者。由于某种原因,只有在jlist中只有一个以上的元素时,代码才有效。使用NETBEANS时,错误就在生成的代码中。

这是我得到的错误:

  

java.lang.ArrayIndexOutOfBoundsException:1> = 1

//这是我的保存按钮,问题是当我尝试保存 // voor ledenlijst

private String input ;
Mainn main;
DefaultListModel model = new DefaultListModel();
int selectie;

 private void opslaanActionPerformed(java.awt.event.ActionEvent evt) {                                        
        String leiderString = leider.getText();
        String namen = model.get(1).toString();
        String codev = code.getText();
        String naam1 = model.get(selectie).toString();


        main = new Mainn();
        try {

            //voor leider wijzigen
            main.stat = main.con.prepareStatement("UPDATE project SET leider=? WHERE code = ?");
            main.stat.setString(1, leiderString);
            main.stat.setString(2, codev);


            // voor ledenlijst PROBLEM IS HERE
            main.stat2 = main.con.prepareStatement("UPDATE leden SET naam = ? WHERE naam = ?");
            main.stat2.setString(1, input);
            main.stat2.setString(2, naam1);




            main.stat.execute();
             main.stat2.execute();
            JOptionPane.showMessageDialog(null, "opgeslagen");
        } catch (SQLException ex) {
            System.out.println(ex);


        }


    }  

//下面是进行更改的代码:

private void wijzigActionPerformed(java.awt.event.ActionEvent evt) {                                       
    //try {
    // } catch (SQLException ex) {
    //    System.out.println(ex);
    // }
    //  

  selectie = uitvoerLeden.getSelectedIndex();
  input = JOptionPane.showInputDialog("Wijzig dit project lid", model.elementAt(selectie));
  model.setElementAt(input,selectie);  
}                                      

1 个答案:

答案 0 :(得分:3)

model在什么时候被初始化?我想这不是在执行此行之前,可能发生错误。

 String namen = model.get(1).toString();