public void inserttx(Jjgl jjgl) 
{
 Set set=new HashSet();  while (rs.next()) {  
 Jjgl jjgl2=new Jjgl();
 jjgl2.setShhjid(rs.getString(1));
 set.add(jjgl2);
 } 
 for (int i = 0; i < set.size(); i++) {   
  String sql2="insert into T_XS_JJ_JSSPTX (SPDID,SHHJID,TXKSSJ,SFCK,TXLX) values(?,?,?,?,?)";
 conn2 = com.cms.db.ConnectFactory.getConnByDataSource("EOMS");
 ps2 = conn2.prepareStatement(sql2); 
    ps2.setString(2,"");
      }
} catch (SQLException e) {
e.printStackTrace();
} finally {
com.cms.common.api.EMSDBAPI.close(ps);
com.cms.common.api.EMSDBAPI.close(conn);
}
}我把查询的结果放到了set集合中
然后想用for循环后取出
我该怎样写
请高手指点

解决方案 »

  1.   

    Jjgl jjgl2=new Jjgl();
    这类名怎么看怎么别扭.....
      

  2.   

    你这代码写的到处都是问题。你根本不了解JDBC,集合也不熟悉,先看看java基础吧。
    基础不打好,后面你会发现越来越难。
      

  3.   

    我只看了前四行,就不想看了,怎么每次都new个新对象捏?
      

  4.   

    LZ把sql2定义在Set set=new HashSet();后面  你的sql2 定义太多了
    你用了占位符就不用写明字段了
      

  5.   

    要循环set么?需要用到Iterator类,而且你这个没必要循环啊,set里只有一个数据
    如果循环set的话,建议用while好一点
    Iterator it = set.iterator();
    while(it.hasNext()){
    Jjgl jjgl2 =(Jjgl)it.next();
    }
    这样是循环set,然后我不是特别清楚你想干什么,如果用for循环的话,set好像没有下标的取值方法吧?所以你这样取值好像是不行的。不过也许我记错了
      

  6.   

    我看怎么觉得很别扭呢?  那个循环set貌似要用到Iterator个类把!
    Jjgl jjgl  这个又是什么呢?  我也是个学生,也许我不懂把!