站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Eclipse 专题close在try里面关闭的问题

close在try里面关闭的问题

摘要: close在try里面关闭的问题


close在try里面关闭的问题


我在try里面用了Connection连接.
然后想关掉.
可我把close放在②和③处时,eclipse报错..可我把他放在①处时.eclipse没报错.当放在那里.如果try里面出错了.直接到catch里面了.就达不到close了.请问是怎么一回事.
try
{
:
:
:
Conn = DriverManager.getConnection ("jdbc:oracle:thin:@192.168.2.177:1521:DESDB", "des", "des");
Pment=Conn.prepareStatement(strSql);
ret=Pment.executeQuery();

}
catch
{

}
finally
{

}


可能是Conn 变量的作用域,把该变量定义在try外面,再试试看


lz看看基础知识吧

close最好放在finally中


当然是在finally里面关了!其他地方关掉会影响到程序的!


你知道你代码实现的过程吗??
你放到2,3处是报编译错误吧,因为catch 中的Conn = null
你放到1处虽然没有编译错误,但一但上面的东西出异常,也不会执行到那里

首先是
Conn = DriverManager.getConnection ("jdbc:oracle:thin:@192.168.2.177:1521:DESDB", "des", "des");
这个会抛各种各样的异常,具体也就不多说啦,最重要的是一抛异常,Conn就为NULL

但是你的连接就是Conn 你在哪里Close它都会抛NULL异常

所以你那个连接和其它的处理是不能放在一起处理的.分开想想逻辑就可以搞定啦



Connection conn = null;//define it
try
{
:
:
:
Conn = DriverManager.getConnection ("jdbc:oracle:thin:@192.168.2.177:1521:DESDB", "des", "des");
Pment=Conn.prepareStatement(strSql);
ret=Pment.executeQuery();
①//conn.close();//here close it
}
catch
{

}
finally
{

if(conn!=null)conn.close();//and here
}



谢谢
aaa2003gf(珍惜 (MSN:aaa2003gf@hotmail.com))
YuLimin(阿敏总司令:简单就是美)

分少了些.请笑纳..


↑返回目录
前一篇: Eclipse中关联源代码
后一篇: 刚开始学hibernate,就遇上问题,今天搞了一天还是不明白。希望大家能帮我解决一下。谢谢