怎样向数据库里插入一个数组?
 //注册用户方法:
   if("register".equals(status))//为register时的处理
   {
   //先取得各数值
   
   String user=request.getParameter("user");
   String password=request.getParameter("password");
   int sex=Integer.parseInt(request.getParameter("sex"));
   String email=request.getParameter("email");
   String telephone=request.getParameter("telephone");
   String aihao[]=request.getParameterValues("aihao");                       Manager manager=new Manager();
   manager.setUser(user);
   manager.setPassword(password);
   manager.setSex(sex);
   manager.setEmail(email);
   manager.setTelephone(telephone);
想用下面的方法处理,但是怎么不行啊!
   for(int i=0;i<aihao.length;i++)
   {
                            manager.setAihao(aihao[i]);
   }

解决方案 »

  1.   

    <td>个人爱好:</td>
    <td><INPUT TYPE="checkbox" NAME="aihao" value="football">踢足球
        <INPUT TYPE="checkbox" NAME="aihao" value="baskectball">打篮球
    <INPUT TYPE="checkbox" NAME="aihao" value="read">看书
    <INPUT TYPE="checkbox" NAME="aihao" value="film">看电影
    </td>我想用request.getParameter("aihao");获取这个值,然后再插入到数据库里面.怎么处理,这样处理的话,它是只能第一个进数据库,其它的都不能进.想看看怎么处理
      

  2.   

    我想了一方法,在前面用一个String,将这个数组放进一个String中,把这个String 进库,是可以的.但我想问一下,还有没有别的方法啊
    比如说 一个一个的插入!
      

  3.   

    把多个值通过多次放到一列中? 有必要吗?而且频繁操作数据库不太好吧~ 就像你说的,先把所有的值放到一个string里,你可以再每两个值之间加些特殊符号,以便以后读取各个值的时候根据那个特殊符号解析就行了~
      

  4.   

    快要,你要用getParameterValues(“aihao”)这个方法返回一个String[]这样你就可以这样了:
    for(int i=0;i <aihao.length;i++) 
       { 
                                manager.setAihao(aihao[i]); 
       }
      

  5.   

    你要用getParameterValues(“aihao”)这个方法返回一个String[]这样你就可以这样了:
    for(int i=0;i <aihao.length;i++) 
       { 
                                manager.setAihao(aihao[i]); 
       }
      

  6.   

    你要用getParameterValues(“aihao”)这个方法返回一个String[]这样你就可以这样了:
    for(int i=0;i <aihao.length;i++) 
       { 
                                manager.setAihao(aihao[i]); 
       }
      

  7.   

    你要用getParameterValues(“aihao”)这个方法返回一个String[]这样你就可以这样了:
    for(int i=0;i <aihao.length;i++) 
       { 
                                manager.setAihao(aihao[i]); 
       }
      

  8.   

    你要用getParameterValues(“aihao”)这个方法返回一个String[]这样你就可以这样了:
    for(int i=0;i <aihao.length;i++) 
       { 
                                manager.setAihao(aihao[i]); 
       }
      

  9.   

       for(int i=0;i <aihao.length;i++) 
       { 
                                manager.setAihao(aihao[i]); 
       }
    你这个方法永远把这个数组的最后一个值给manager的aihao啊 不知道你要怎么样的效果 
    一个呢就是用个算法把数组转化成字符串 比如aihao= {1,2,3} 你可以转化成theStr = 1|2|3 
    要用的时候再把他一个个分离开来  
      

  10.   

    for(int i=0;i <aihao.length;i++) { 
         manager.setAihao(aihao[i]); 
         BaseDAO.save(manager);//在这里保存。
    }
      

  11.   

     第一张表:        person_id  aihao_id
                      001         A
                      002         B
     第二张表:       aihao_id    aihao
                       A          1
                       A          2
                       A          3
                       B          1
                       B          2
                       B          3
    如果不想增加表就解析字符串咯,楼上各位达人讲的很清晰了   
      

  12.   

    用getParameterValues(“aihao”)肯定行的,你试一下..
      

  13.   

    插数组没是过,不过你可以有几个CHECKBOX就插几条数据,在用SQL语句用共同的外键(或一样的type值),mysql的
    group_concat组成一串在查出来,不知道为什么插数组,目的不清楚.
      

  14.   

    在manager这个类中就那么定义aihao为数组,然后set不就行了。