解决方案 »
- 谁有马士兵JAVA基础视频教程中的PPT教程?发我一份,非常感谢
- 包的概念
- JTree 缩进去除
- JAVA小问题求解
- 新手上路 问个Object类 clone() 的问题
- Software caused connection abort: socket write error?
- 一个简单的问题,做了很多调试就是不行,纳闷了~!!
- 急急急急急急急急!!!!!!!!!!!!!!!散分散分散分散分散分散分散分散分散分散分散分散分
- 在java中变量名的长度有没有限制?
- 郁闷得要死!
- 我要通过jdbc连接远程informix数据库,请问远程的数据库应该如何设置? 程序报错INFORMIXSERVER has to be specified
- 构造器也可以带public吗?volatile怎么用?
如果jdbc连接数据库的话,connection需要手动释放掉,
还有数据可以分批读取,单次读取量,自己琢磨这来吧
2,然后根据远程数据的页数进行for循环。
有使用数据库,但是因为程序中现在有一次再调用多个这种类似的下载方法,如果调用一次,就close一次connection,好像也会出现问题吧?
有使用数据库,但是因为程序中现在有一次再调用多个这种类似的下载方法,如果调用一次,就close一次connection,好像也会出现问题吧?我的意思是:
如果你使用c3p0之类的数据库连接池的话,他会自动的处理connection,
如果你是直接使用的java jdbc的话,那你就要考虑释放connection了
你试试把占内存的对象指向NULL,然后再GC
有使用数据库,但是因为程序中现在有一次再调用多个这种类似的下载方法,如果调用一次,就close一次connection,好像也会出现问题吧?我的意思是:
如果你使用c3p0之类的数据库连接池的话,他会自动的处理connection,
如果你是直接使用的java jdbc的话,那你就要考虑释放connection了我用的是 jdbc,昨晚也试着加上每次下载完关闭connection,但是内存还是没有释放,所以你还有什么别的建议吗?
StringBuffer strSQL = new StringBuffer();
strSQL.append("SELECT * FROM GISFIBER FB WHERE FB.ID IN (SELECT DISTINCT F.ID FROM GISCABLESECTION CS,GISCABLETERM T,")
.append("GISFIBER F WHERE (T.ID=CS.ATERMID OR T.ID=CS.ZTERMID) AND CS.ID=F.CABLESECTIONID AND T.REGIONCODE='")
.append(region).append("')").append(" ORDER BY FB.ID LIMIT ").append(pageSize)
.append(" OFFSET ").append((iPage - 1) * pageSize);
stmt = conn_remote.prepareStatement ( strSQL.toString() ) ;
record = stmt.executeQuery () ;
YFiber fiber=null;
while ( record.next () )
{
fiber = YObjectConvertor.toFiber(record);
GisWrite.create(context, fiber);
conn_local.commit();
}
}写在循环里 得开销很多。