将java复选框值插入sql

时间:2015-07-26 09:23:47

标签: java mysql checkbox

有谁知道如何将复选框值插入sql?所有复选框值将对应于字段的一列(首选项),并在单击过程按钮时插入。 编码如下:

User.java

JButton btnNewButton = new JButton("Process");
        btnNewButton.setBounds(360, 296, 89, 23);
        contentPane.add(btnNewButton);
        btnNewButton.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                String place=null;
                String a=(String)comboBox.getSelectedItem().toString();
                String b=(String)comboBox_1.getSelectedItem().toString();
                String day=(String)comboBox_2.getSelectedItem().toString();

                if(chckbxLei.isSelected())
                {
                    place=String.valueOf(chckbxLei.getText());

                }
                if(chckbxAdv.isSelected())
                {
                    place=String.valueOf(chckbxAdv.getText());

                }
                if(chckbxHis.isSelected())
                {
                    place=String.valueOf(chckbxHis.getText());

                }
                if(chckbxOut.isSelected())
                {
                    place=String.valueOf(chckbxOut.getText());

                }
                if(chckbxFAK.isSelected())
                {
                    place=String.valueOf(chckbxFAK.getText());

                }
                Case ca= new Case();
                try {
                    ca.addPlace(a,b,day,place);
                    LoginGUI um= new LoginGUI();
                    um.setVisible(true);

                } catch (Exception e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                }


    }       
    });

Case.java

 public void addPlace( String t, String k, String z,String h) throws Exception{

        DatabaseConnection db=new DatabaseConnection();
        Connection connect=db.getConnection();

        String sql="Insert into menu(Type,Budget,Day,Preferences)VALUES (?,?,?,?)";

        PreparedStatement ps=connect.prepareStatement(sql);
        ps.setString(1,t);
        ps.setString(2,k);
        ps.setString(3,z);
        ps.setString(4,h);
        ps.executeUpdate();
        connect.close();
        ps.close();
    }

一切正常工作实际上我需要一些关于如何在MySQL DB中的单个列中存储多个复选框值的指导。我真的需要认真帮助。非常感谢您的帮助:)

1 个答案:

答案 0 :(得分:2)

用这种方式解决了:)

 String valuesOfCheckBox = "";
  if (chckbxLei.isSelected()) {
  valuesOfCheckBox += chckbxLei.getText() + " ";
  }
  if (chckbxAdv.isSelected()) {
  valuesOfCheckBox += chckbxAdv.getText() + " ";
  }