我正在尝试创建一个方法,从中我可以查询我的数据库并检索整个表.
目前,如果我使用方法内的数据,它的工作正常.但是,我希望该方法返回结果.
我正在java.sql.SQLException: Operation not allowed after ResultSet closed使用当前的代码.
我怎样才能做到这一点?
public ResultSet select() {
con = null;
st = null;
rs = null;
try {
con = DriverManager.getConnection(url, user, password);
st = con.createStatement();
rs = st.executeQuery("SELECT * FROM biler");
/*
if (rs.next()) {
System.out.println(rs.getString("model"));
}*/
} catch (SQLException ex) {
Logger lgr = Logger.getLogger(MySQL.class.getName());
lgr.log(Level.SEVERE, ex.getMessage(), ex);
} finally {
try {
if (rs != null) {
rs.close();
}
if (st != null) {
st.close();
} …Run Code Online (Sandbox Code Playgroud) 直到今天,我还在ResultSet处理查询结果时.但今天我读了一些关于RowSet并且CachedRowset我意识到他们可以更好地服务于我的目的.而在所有的例子我读到这里RowSet和CachedRowSet被简称为对象,当我尝试过自己在我的代码,我意识到那些接口,并在他们的例子使用这些接口的一些实现.
现在我的问题是我在哪里找到这些实现,是否有官方的东西?
我需要下载它们还是它们带有JDK?
我只是尝试运行此代码:
import com.sun.rowset.CachedRowSetImpl;
public class Test {
public static void main(String[] args) throws Exception{
CachedRowSetImpl crs = new CachedRowSetImpl();
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我得到:
错误:(1,15)java:包com.sun.rowset不可见(包com.sun.rowset在模块java.sql.rowset中声明,它不导出它)
我正在使用IntelliJ,我试图导入rs2xml.jar,但仍然没有帮助.