主题:帮我看下这个数据关闭的有没有问题
是不是这样就可以了..大家请帮我看下这可不可以
主要是帮我看关闭rs,stmt,con可不可以那样写的!?
package mf;
import java.sql.*;
import javax.naming.*;
import javax.sql.DataSource;
public class DB
{
private Connection con=null;
private Statement stmt=null;
ResultSet rs=null;
//建立数据源连接
public Connection getConnection() throws Exception{
Context initCtx = new javax.naming.InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup("jdbc/OracleDB");
con=ds.getConnection();
return con;
}
//执行Query语句
public ResultSet executeQuery(String sql,Connection conn) throws Exception
{
rs=null;
try
{
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery (sql);
}
catch(SQLException e){throw e;}
return rs;
}
//执行Insert,Update语句
public void executeUpdate(String sql,Connection conn) throws Exception
{
stmt = null;
rs=null;
try
{
stmt=conn.createStatement();
stmt.executeUpdate(sql);
}
catch(SQLException ex)
{
System.err.println("执行SQL语句出错: " + ex.getMessage());
}
}
// 关闭rs
public void closeResultSet()
{
try
{
if(rs!=null)rs.close();
}
catch(SQLException e){e.printStackTrace();}
finally
{
if (rs!=null)
{
try
{
rs.close();
}
catch (Exception ex){}
}
}
}
// 关闭stmt
public void closeStatement()
{
try{
if(stmt!=null)stmt.close();
}
catch(SQLException e){e.printStackTrace();}
finally
{
if (stmt!=null)
{
try
{
stmt.close();
}
catch (Exception ex){}
}
}
}
// 关闭Connection
public void closeConnection(Connection con)
{
try{
if(con!=null)con.close();
}
catch(SQLException e){e.printStackTrace();}
finally
{
if (con!=null)
{
try
{
con.close();
}
catch (Exception ex){}
}
}
}
}
[em12]
主要是帮我看关闭rs,stmt,con可不可以那样写的!?
package mf;
import java.sql.*;
import javax.naming.*;
import javax.sql.DataSource;
public class DB
{
private Connection con=null;
private Statement stmt=null;
ResultSet rs=null;
//建立数据源连接
public Connection getConnection() throws Exception{
Context initCtx = new javax.naming.InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup("jdbc/OracleDB");
con=ds.getConnection();
return con;
}
//执行Query语句
public ResultSet executeQuery(String sql,Connection conn) throws Exception
{
rs=null;
try
{
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery (sql);
}
catch(SQLException e){throw e;}
return rs;
}
//执行Insert,Update语句
public void executeUpdate(String sql,Connection conn) throws Exception
{
stmt = null;
rs=null;
try
{
stmt=conn.createStatement();
stmt.executeUpdate(sql);
}
catch(SQLException ex)
{
System.err.println("执行SQL语句出错: " + ex.getMessage());
}
}
// 关闭rs
public void closeResultSet()
{
try
{
if(rs!=null)rs.close();
}
catch(SQLException e){e.printStackTrace();}
finally
{
if (rs!=null)
{
try
{
rs.close();
}
catch (Exception ex){}
}
}
}
// 关闭stmt
public void closeStatement()
{
try{
if(stmt!=null)stmt.close();
}
catch(SQLException e){e.printStackTrace();}
finally
{
if (stmt!=null)
{
try
{
stmt.close();
}
catch (Exception ex){}
}
}
}
// 关闭Connection
public void closeConnection(Connection con)
{
try{
if(con!=null)con.close();
}
catch(SQLException e){e.printStackTrace();}
finally
{
if (con!=null)
{
try
{
con.close();
}
catch (Exception ex){}
}
}
}
}
[em12]