Java 如何将sql语句的结果集存储在两个不同的变量中并使用?
我想存储结果集分别存储两个不同的位置并分别使用。这可能吗Java 如何将sql语句的结果集存储在两个不同的变量中并使用?,java,sql,resultset,Java,Sql,Resultset,我想存储结果集分别存储两个不同的位置并分别使用。这可能吗 public void demo(){ /* Result set got from the corpusSentenceRetrive method */ ResultSet rsNew=corpusSentenceRetrive(wordAll); ArrayList<String> resultSetStore= new ArrayList<String>(); for(in
public void demo(){
/* Result set got from the corpusSentenceRetrive method */
ResultSet rsNew=corpusSentenceRetrive(wordAll);
ArrayList<String> resultSetStore= new ArrayList<String>();
for(int i=0;i<2;i++){
resultSetStore.add(i,rsNew);
}
method1(resultSetStore.get(0));
method2(resultSetStore(1));
}
public void method1(ResultSet rst){
ResultSet rs = rst;
while (rs.next()) {....}
}
public void method2(ResultSet rst){
ResultSet rs = rst;
while (rs.next()) {....}
}
public void demo(){
/*结果集从微粒子检索方法获得*/
结果集合rsNew=微粒子数量检索(wordAll);
ArrayList resultSetStore=新建ArrayList();
对于(int i=0;i一个ResultSet包含您正在读取的位置的内部游标。因此,当调用第一个方法并完成时,游标位于可用结果的末尾。因此,当调用第二个方法时,没有要检查的结果。在任何一个方法中使用结果之前,您都可以调用ResultSet.beforeFirst()
确保光标在使用前位于正确的位置。由于没有标准方法使用db值复制ResultSet
,因此您必须将数据存储在其他位置。大多数ResultSet实现不会将所有结果存储在其中,而只是保持与用于获取数据的数据库的连接因此,请使用两个不同的resultset或将resultset的所有数据存储到任何其他数据结构中,如列表/地图等,以便按照您的要求执行上述任务
所以你不能两次使用同一个结果集。MySQL
标签与你的问题有什么关系?看看这个@Anarki实际上我不想存储结果集值。我想在两个位置添加整个结果集内容。因为我想分别执行两个方法。@Maduri你是说你想在两个方法中传递相同的结果集?@是的。但我不知道怎么做。你是天才。你解决了我的大问题和宝贵的时间。一次又一次。祝你愉快:)。