当前位置: 技术问答>java相关
求助,关于数据库连接的问题
来源: 互联网 发布时间:2015-03-12
本文导语: 这是我的sql.class:----------- import java.sql.*; public class sql { String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver"; String sConnStr = "jdbc:odbc:txl"; Connection conn = null; ResultSet rs = null; public sql() { try { Class.forName(sDBDriver); } catch(java.lang...
这是我的sql.class:-----------
import java.sql.*;
public class sql
{
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr = "jdbc:odbc:txl";
Connection conn = null;
ResultSet rs = null;
public sql()
{
try
{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("sql(): " + e.getMessage());
}
}
public void Execute(String sql)
{
try
{
conn = DriverManager.getConnection(sConnStr);
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
}
catch(SQLException ex)
{
System.err.println("sql.execute:"+ex.getMessage());
}
}
public ResultSet Open(String sql)
{
rs = null;
try
{
conn = DriverManager.getConnection(sConnStr);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.err.println("sql.Open:"+ex.getMessage());
}
return rs;
}
}
-------------------------------------------------------------------------------
我在一个页里频繁的调用Open()方法,而连接conn没有关闭过,是不是每调用一次都新建了一个连接?
如果我的jsp里:,是不是只是在同一个session里只加载了一次驱动,而以后每次调用Execute()或Open()都打开了新的连接?应该每次用完了连接都关闭了吧?
import java.sql.*;
public class sql
{
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr = "jdbc:odbc:txl";
Connection conn = null;
ResultSet rs = null;
public sql()
{
try
{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("sql(): " + e.getMessage());
}
}
public void Execute(String sql)
{
try
{
conn = DriverManager.getConnection(sConnStr);
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
}
catch(SQLException ex)
{
System.err.println("sql.execute:"+ex.getMessage());
}
}
public ResultSet Open(String sql)
{
rs = null;
try
{
conn = DriverManager.getConnection(sConnStr);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.err.println("sql.Open:"+ex.getMessage());
}
return rs;
}
}
-------------------------------------------------------------------------------
我在一个页里频繁的调用Open()方法,而连接conn没有关闭过,是不是每调用一次都新建了一个连接?
如果我的jsp里:,是不是只是在同一个session里只加载了一次驱动,而以后每次调用Execute()或Open()都打开了新的连接?应该每次用完了连接都关闭了吧?
|
是的