Gravando checkbox no banco de dados - me ajudem

pessoal, tenho um monte de jcheckbox que preciso saber se esta selecionado ou nao, para gravar no banco de dados.

fiz um array como segue o codigo :

[code] // metodo array dos campos jtextfield
public static JCheckBox [] campos(JCheckBox rest,JCheckBox prod,JCheckBox conv,JCheckBox clie,JCheckBox form,
JCheckBox vend,JCheckBox forn,JCheckBox plan,JCheckBox grup,JCheckBox cida,JCheckBox doct,JCheckBox usua,JCheckBox fili) {
JCheckBox [] tf = {rest,prod,conv,clie,form,vend,forn,plan,grup,cida,doct,usua,fili};

    int i;
    for(i=0 ; i<tf.length ; i++){
        if(tf[i].isSelected()){
            *** nao sei como fazer para gavar "1" nas variaveis ***
        }
        
        } 
    
return tf;     
}
[/code]

mas nao sei como fazer para setar “0”-marcado ou “1”-desmarcado nas seguinte variaves :

 String restrito,produto,convenio,cliente,formapgto,vendedores,fornecedores,planocontas,grupos,cidades,doctos,usuarios,filiais;

como ficaria o codigo ?
essa seria a melhor maneira de jogar no banco de dados ?

Acho que o mais fácil é usar um PreparedStatement, e então percorrer o seu vetor de checkboxes marcando o isSelected em cada campo do PreparedStatement. Nesse caso, você nem precisaria das variáveis String que você quer declarar…

No prepared statement, você monta uma consulta como:

INSERT INTO tabela (rest,prod,conv,clie,form,vend,forn,plan,grup,cida,doct,usua,fili) VALUES (?, ?, ?,?,?,?,?,?,?,?,?,?,?,?)

E depois no java você faz:

for (int i = 0; i &lt tf.length; i++) preparedStatement.setBoolean(i+1, tf[i].isSelected());

refiz ocodigo, mas o problema é que nao grava nada no banco, nem da qualquer tipo de erro, alguem pode dar uma olhadinha ai no codigo …

aqui esta parte do codigo que esta o array[code] // metodo array dos campos jtextfield
public static JCheckBox [] campos(JCheckBox rest,JCheckBox prod,JCheckBox conv,JCheckBox clie,JCheckBox form,
JCheckBox vend,JCheckBox forn,JCheckBox plan,JCheckBox grup,JCheckBox cida,JCheckBox doct,JCheckBox usua,JCheckBox fili) {
JCheckBox [] tf = {rest,prod,conv,clie,form,vend,forn,plan,grup,cida,doct,usua,fili};

    try{
        
        Class.forName("org.gjt.mm.mysql.Driver");
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/uni20","root","adelmo");
        String SQL = "INSERT INTO cadusu (usu_rest,usu_prod,usu_conv,usu_clie,usu_form,usu_vend,usu_forn,usu_plan,usu_grup,usu_cida,usu_doct,usu_usua,usu_fili) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)";
        PreparedStatement ps = (PreparedStatement) conn.prepareStatement(SQL);
        
        for (int i = 0; i < tf.length; i++) 
           ps.setBoolean(i+1, tf[i].isSelected());[/code]

aqui esta a passagem dos parametros private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { BD_Usuarios.campos(jch_restrito,jch_produtos,jch_convenios,jch_clientes,jch_formapgto,jch_vendedores,jch_fornecedores,jch_planocontas,jch_grupos,jch_cidades,jch_doctos,jch_usuarios,jch_filiais); }