直到今天我与ResultSet
从查询处理结果时工作。但是,今天我读了一些关于RowSet
和CachedRowset
,我意识到他们能为我的目的更好。虽然我读了所有的例子,其中RowSet
和CachedRowSet
在我的代码被简称为对象,当我尝试过自己,我意识到那些接口,并在他们的例子使用这些接口的一些实现。
现在的问题是在哪里可以找到这些实现,而且是有什么官?
我是否需要下载他们或他们来与JDK?
的实现是JRE具体。甲骨文(星期日)JRE配备了一堆的实现:
com.sun.rowset.JdbcRowSetImpl
com.sun.rowset.CachedRowSetImpl
com.sun.rowset.WebRowSetImpl
com.sun.rowset.FilteredRowSetImpl
com.sun.rowset.JoinRowSetImpl
在Java 1.6之前,你需要自己构建它们:
JdbcRowSet rowSet = new JdbcRowSetImpl();
rowSet.setDataSourceName("jdbc/dbname");
// Or
rowSet.setUrl("jdbc:vendor://host:port/dbname");
rowSet.setUsername("username");
rowSet.setPassword("password");
rowSet.setCommand("SELECT id, name, value FROM tbl");
rowSet.execute();
while (rowSet.next()) {
// ...
}
在Java 1.7,你可以通过javax.sql.rowset
工厂让他们让你不依赖底层JRE实现的,并且如果必要,可以选择微调的实施:
RowSetFactory rowSetFactory = RowSetProvider.newFactory();
JdbcRowSet rowSet = rowSetFactory.createJdbcRowSet();
// ...
它不仅不能提供一种可能性,通过对建设ResultSet
。这些实现不与平均JDBC驱动船(至少,MySQL和PostgreSQL有没有)。它基本上是一个额外的(可选)层在JDBC API作为包名前缀javax
提示。
请注意,如果你走到这一步的寻找到行集,那么你可能要考虑寻找到一个ORM代替,例如Hibernate或JPA。它们提供了第一/第二级缓存的可能性。
它配备了JDK。
在JDK 10中,罐是:JDK-10.0.2 / LIB / JRT-fs.jar
而且罐子里面的包/类是:javax.sql.RowSet.class
丹尼尔·皮涅罗
Daniel [email protected]
在Eclipse Java构建路径添加rt.jar中。然后你看到所有的FPGA实现类。否则,您可以从Eclipse中未允许从JDK访问的rt.jar限制。我的作品。我用的是JDK1.6和Eclipse月神。