java代理连接oracle数据库时,connection关不掉,是什么原因?(感谢!)
java代理连接oracle数据库
执行connection.close()后,连接事实上并没有关掉,请问是什么原因啊,应该怎么处理?
import lotus.domino.*;
import java.sql.*;
import java.*;
public class JavaAgent extends AgentBase {
public void NotesMain() {
Connection conn=null;
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext() Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection ("jdbc:oracle:thin:@192.168.30.20:1521:zj","sms","sms");
} catch(Exception e) {
e.printStackTrace();
}
finally
{
try
{
if (conn != null)
{
conn.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
if (conn==null)
{
System.out.println("closed!!!!!!!!!!!!!!!!!!!!");
}
else
{
System.out.println("unclosed!!!!!!!!!!!!!!!!");
}
}
}
}
结果是 unclosed!!!
问题点数:0、回复次数:5Top
1 楼skystar99047(天星)回复于 2005-04-01 19:52:15 得分 0
去Oracle数据库中查一下session就知道有没有被关闭了Top
2 楼ceci()回复于 2005-04-04 08:58:24 得分 0
没有关闭,应该怎么办?Top
3 楼graydom(龟)回复于 2005-04-04 09:19:19 得分 0
自己释放
if (conn != null)
{
conn = null
}Top
4 楼maplescloud(风清云淡)回复于 2005-04-04 13:40:27 得分 0
close并不意味着本身就是 null了,先close再赋值为 null,释放资源。Top
5 楼guyue216(雷雨)回复于 2005-04-04 14:44:14 得分 0
close掉后,再给他附空就行了
Top




