我想有我可以使用像SELECT简单的SQL命令的数据库连接管理类,插入等通过简单的调用是这样的(如下班):不关闭返回ResultSet?
ResultSet test = DataService.getResultSet("SELECT NOW()");
test.first();
System.out.println(test.getString(1));
这是类我已经在网络上找到:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
* Database object to load drivers and perform queries
* @author Abdulsalam Umar blog.salamtura.com
*/
public class DataService {
private static Connection con;
private static final String Driver = "oracle.jdbc.driver.OracleDriver";
private static final String ConnectionString = "Your database connection string";
private static final String user = "username";
private static final String pwd = "password";
/**
* create Database object
*/
public DataService() {
}
/**
* to load the database base driver
* @return a database connection
* @throws SQLException throws an exception if an error occurs
*/
public static Connection loadDriver() throws SQLException {
try {
Class.forName(Driver);
} catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
}
con = DriverManager.getConnection(ConnectionString, user, pwd);
return con;
}
/**
* to get a result set of a query
* @param query custom query
* @return a result set of custom query
* @throws SQLException throws an exception if an error occurs
*/
public static ResultSet getResultSet(String query) throws SQLException {
Connection con = loadDriver();
ResultSet rs;
PreparedStatement st = con.prepareStatement(query);
rs = st.executeQuery();
return rs;
}
/**
* to run an update query such as update, delete
* @param query custom query
* @throws SQLException throws an exception if an error occurs
*/
public static void runQuery(String query) throws SQLException {
Connection con = loadDriver();
ResultSet rs;
PreparedStatement st = con.prepareStatement(query);
st.executeUpdate();
}
}
的问题是:是无需关闭它(和关闭语句)右返回结果集的这种方式?我怎样才能从方法中返回ResultSet?
或另一个示例:http://www.programcreek.com/2009/06/prototype-of-database-class/ – Martin 2014-11-02 14:20:20
[Returning a ResultSet]的可能重复(http://stackoverflow.com/questions/14853508 /返回-A-结果集) – 2014-11-02 15:11:47