有没有可能写这样的一个方法:这个方法叫close()一下子关闭所有的数据连接 关键是要找出来。包括ResultSet和Statement. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 所有的数据库连接,什么意思?当前JVM内所有线程连接数据库的连接? 当前可以,举个例子一般情况把数据库推辞封装成成一个类 public class DataBase { private static Connection conn; private static PreparedStatement pstmt; private static Statement stmt; private static ResultSet rs; public void close(){ try { closeRs(); closePstmt(); closeConn(); } catch (SQLException e){ System.err.println("关闭资源出错!!!---" + e.getMessage()); } } public void closeRs() throws SQLException{ if(rs != null) { rs.close(); rs = null; } } public void closePstmt() throws SQLException{ if(pstmt != null) { pstmt.close(); pstmt = null; } } public void closeConn() throws SQLException{ if(conn != null) { conn.close(); conn = null; } }} 另外关闭的语句要写到finally里面这样不管过程出不出错 连接都会关闭掉 4楼:问题就在这里。我使用时,ResultSet通常,有不同的变量名。但在你的代码里已经定死了它的名字。这样,关闭不停于白关吗? public void close(Connection conn,Statement st,ResultSet rs) throws SQLException { try { if(conn!=null) conn.close(); if(st!=null) st.close(); if(rs!=null) rs.close(); } catch (SQLException e) { e.printStackTrace(); throw e; } }这样不就行了 10楼的方法是简单,不知道是否可行。我觉得应该这样改下。if(conn!=null && !conn.iscolsed()) conn.close();不知道大家是否赞同。。 数据库连接被关掉之后是null吗? 楼主要把代码组织好啊,不要把 ResultSet 乱丢。 如果你用数据库连接不马上关闭,效率不会很高,程序设计绝对有问题如果你有个业务,需要运行10条SQL语句,你怎么做?用1个数据库连接还是10个? Java的int类型是线程安全的? 关于hibernate查询之后对象转换的问题!。。 新手的一个小问题,非技术性的。 菜鸟求助怎么把文件路径中的“\”都替换成“\\” 请教各位高手!关于JTREE的问题,高分相送! 那里有jmf中文技术指南? 急救:可执行JAR包,路径设置问题 在线等待! 关于用java连接domino的问题 从C#转到JAVA,请大家提点建议 继承了一个jcomponet类生成一个组件,将组件放在一个jpanel中,想要设置组件的tooltiptext 如何设置ThreadStackSize大小 ?顶者给分,急。 怎么让jsp回车不刷新
一般情况把数据库推辞封装成成一个类
public class DataBase { private static Connection conn;
private static PreparedStatement pstmt; private static Statement stmt;
private static ResultSet rs; public void close(){
try {
closeRs();
closePstmt();
closeConn();
} catch (SQLException e){
System.err.println("关闭资源出错!!!---" + e.getMessage());
}
}
public void closeRs() throws SQLException{
if(rs != null) {
rs.close();
rs = null;
}
}
public void closePstmt() throws SQLException{
if(pstmt != null) {
pstmt.close();
pstmt = null;
}
}
public void closeConn() throws SQLException{
if(conn != null) {
conn.close();
conn = null;
}
}
}
这样不管过程出不出错 连接都会关闭掉
问题就在这里。
我使用时,ResultSet通常,有不同的变量名。
但在你的代码里已经定死了它的名字。
这样,关闭不停于白关吗?
public void close(Connection conn,Statement st,ResultSet rs) throws SQLException
{
try {
if(conn!=null)
conn.close();
if(st!=null)
st.close();
if(rs!=null)
rs.close();
}
catch (SQLException e) {
e.printStackTrace();
throw e;
}
}这样不就行了
我觉得应该这样改下。
if(conn!=null && !conn.iscolsed())
conn.close();
不知道大家是否赞同。。