Java 6 RowSet 使用完全剖析(3)
Java 6 RowSet 使用完全剖析(3)
关键字: rowset
清单 24. 清单 23 中的代码执行结果
1 Tom Tom is VIP. 2 Jim null
下面一节里我们将会看到 JdbcRowSet 如何作为一个 RowSet 和其他的 RowSet 一起使用。
使用 JoinRowSet
支持的联合方式
JoinRowSet 接口中对五种不同的联合方式都定义了对应的常数和判断该实现是否支持的方法,如下表所示。
表 5. 五种联合方式
联合方式 对应的常数 判断是否支持的方法(返回布尔值)
内连接(INNER JOIN) JoinRowSet.INNER_JOIN supportsInnerJoin()
左外连接(LEFT OUTER JOIN) JoinRowSet.LEFT_OUTER_JOIN supportsLeftOuterJoin()
右外连接(RIGHT OUTER JOIN) JoinRowSet.RIGHT_OUTER_JOIN supportsRightOuterJoin()
全外连接(FULL OUTER JOIN) JoinRowSet.FULL_JOIN supportsFullJoin()
交叉连接(CROSS JOIN) JoinRowSet.CROSS_JOIN supportsCrossJoin()
同时还有两个方法,getJoinType() 返回当前的联合方式,setJoinType(int) 设置联合方式。值得注意的是,Java 5 和 Java 6 中都支持内连接 (INNER JOIN) 这一种联合方式。在 setJoinType 方法中传入除 Inner_Join 以外的任何一种联合方式都会抛出 UnsupportedOperationException 的异常。
另外一点需要注意的,虽然默认的联合方式就是内连接,但是在没有显示的调用 setJoinType() 之前调用 getJoinType() 会抛出 ArrayIndexOutOfBoundsException 的异常。 所以一般来讲,我们可以不需要调用这几个方法而直接认为 JoinRowSet 默认并且只允许的联合方式就是内连接(INNER JOIN)。
如何联合各种 RowSet
联合多个 RowSet 的方法其实就是往一个 JoinRowSet 里调用 add 方法添加其他 RowSet(这个 RowSet 可以是上面提到的五种 RowSet 中的任意一种,包括离线操作的 JdbcRowSet 和 JoinRowSet 本身)的过程。添加一个 RowSet 的同时也必须制定联合时匹配的列。JoinRowSet 接口中提供了以下几个 add 方法:
addRowSet(Joinable rowset)
addRowSet(RowSet[] rowset, int[] columnIdx)
addRowSet(RowSet[] rowset, String[] columnName)
addRowSet(RowSet rowset, int columnIdx)
addRowSet(RowSet rowset, String columnName)
下面是一个联合一个 JdbcRowSet 和一个 CachedRowSet 的简单例子。
清单 25. 使用 JoinRowSet
// 构造一个CachedRowSet并且填充CUSTOMERS表中的数据。
Java代码
C
相关文档:
Java分成J2ME(移动应用开发),J2SE(桌面应用开发),J2EE(Web企业级应用),所以Java并不是单机版的,只是面向对象语言。建议如果学习Java体系的话可以这样去学习:
*第一阶段:Java基础,包括Java语法,面向对象特征,常见API,集合框架;
*第二阶段:Java界面编程,包括AWT,事件机制,SWING,这个部 ......
作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从。根据我的经验,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水平的Java程序员们。
一、Java编程入门类
对于没有Java编程经验的程序员要入门,随便读什么入门书籍都一样,这个阶段需要你 ......
一个Java程序员应该掌握的10项技能
1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。
2、命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、 HtmlConverter、jar、 java、javac、javadoc、javap、javaw、nati ......
作者
:
李志涛
邮箱地址
:lizhitao67116961@163.com
深圳优网科技有限公司
前几天看到有某位网友写了用http进行断点下载文件,但是网上没有看到ftp断点下载的文章或代码,现在本人写了一下。经过测试没有问题。请大家多多指教。如有疏漏的地方请各位技术友人指出。本人不胜感激。
package
test.d ......
Java EE 6 Platform草案包含了Web Profile
来源:http://www.infoq.com/cn/news/2009/02/java-ee6-draft
作者 Dionysios G. Synodinos 译者 宋玮 发布于 2009年2月3日 下午10时55分
社区 Java 主题 Enterprise Application Blocks 标签 Java EE
Java EE 6 Platform规范 ......