banq
2002-09-09 17:53

iterator办法试验下来,只适合prepareStatement

你用的是statement

statement一结束,resulset就清空,所以iterator得null

jacquiyan
2002-09-09 20:47

没有啊,我用的就是preparestament啊,请在看看,

jacquiyan
2002-09-09 21:01

我在调试过程中发现是先执行了finall内的代码在返回,所以在返回前就关闭了preparestament,这是导致的到null的原因,现在有一个问题,如果用这个方法的话,那什么时候关闭连接呢?

banq
2002-09-10 10:39

我仔细看了,你的代码不是PrepareStatment 的问题

是你的Law retval = law;

问题

在iterator里需要直接操作ResultSet.而你是操作自己的定义Law

当然你这样做可以,注意和ResultSet的衔接问题。

总体原则是 iterator实际是一个传递指针,所以你要把确切的指针给iterator用来传递

jacquiyan
2002-09-10 17:04

在你提供的原代码中,不也是用了string吗,我只是把他改为自定义的Law而已啊,我想你所说的错误出处就是在传递指针上面,我对这段iterator代码不熟悉,可以说一下到底是怎样传指针的吗?