仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 686|回复: 12
打印 上一主题 下一主题

[学习教程] 发布一篇JDBC基本教程之ResultSet对象

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:28:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
主要缺点就是:速度比较慢,没有C和C++快
概述
ResultSet包括切合SQL语句中前提的一切行,而且它经由过程一套get办法(这些get办法能够会见以后行中的分歧列)供应了对这些行中数据的会见。ResultSet.next办法用于挪动到ResultSet中的下一行,使下一行成为以后行。
了局集通常为一个表,个中有查询所前往的列题目及响应的值。比方,假如查询为SELECTa,b,cFROMTable1,则了局集将具有以下情势:
abc
-------------------------
12345CupertinoCA
83472RedmondWA
83492BostonMA
上面的代码段是实行SQL语句的示例。该SQL语句将前往行汇合,个中列1为int,列2为String,而列3则为字节数组:
java.sql.Statementstmt=conn.createStatement();
ResultSetr=stmt.executeQuery("SELECTa,b,cFROMTable1");
while(r.next())
{
 //打印以后行的值。
 inti=r.getInt("a");
 Strings=r.getString("b");
 floatf=r.getFloat("c");
 System.out.println("ROW="+i+""+s+""+f);
}
1、行和光标
ResultSet保护指向其以后数据行的光标。每挪用一次next办法,光标向下挪动一行。最后它位于第一行之前,因而第一次挪用next将把光标置于第一行上,使它成为以后行。跟着每次挪用next招致光标向下挪动一行,依照从上至下的序次猎取ResultSet行。
在ResultSet对象或其父辈Statement对象封闭之前,光标一向坚持无效。
在SQL中,了局表的光标是着名字的。假如数据库同意定位更新或定位删除,则必要将光标的名字作为参数供应给更新或删除命令。可经由过程挪用办法getCursorName取得光标名。
注重:不是一切的DBMS都撑持定位更新和删除。可以使用DatabaseMetaData.supportsPositionedDelete和supportsPositionedUpdate办法来反省特定毗连是不是撑持这些操纵。当撑持这些操纵时,DBMS/驱动程序必需确保得当锁定选定行,以使定位更新不会招致更新非常或别的并提问题。
2、列
办法getXXX供应了猎取以后行中某列值的路子。在每行内,可按任何序次猎取列值。但为了包管可移植性,应当从左至右猎取列值,而且一次性地读取列值。列名或列号可用于标识要从中猎取数据的列。比方,假如ResultSet对象rs的第二列名为“title”,并将值存储为字符串,则以下任一代码将猎取存储在该列中的值:
Strings=rs.getString("title");
Strings=rs.getString(2);
注重列是从左至右编号的,而且从列1入手下手。同时,用作getXXX办法的输出的列名不辨别巨细写。
供应利用列名这个选项的目标是为了让在查询中指定列名的用户可以使用不异的名字作为getXXX办法的参数。另外一方面,假如select语句未指定列名(比方在“select*fromtable1”中或列是导出的时),则应当利用列号。这些情形下,
户将没法切实晓得列名。
有些情形下,SQL查询前往的了局会合大概有多个列具有不异的名字。假如列名用作getXXX办法的参数,则getXXX将前往第一个婚配列名的值。因此,假如多个列具有不异的名字,则必要利用列索引来确保检索了准确的列值。这时候,利用列号效力要略微高一些。
关于ResultSet中列的信息,可经由过程挪用办法ResultSet.getMetaData失掉。前往的ResultSetMetaData对象将给出其ResultSet对象各列的编号、范例和属性。
假如列名已知,但不知其索引,则可用办法findColumn失掉其列号。
<p>
首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。
海妖 该用户已被删除
沙发
发表于 2015-1-21 07:44:32 来自手机 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
板凳
发表于 2015-1-30 11:24:48 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
小魔女 该用户已被删除
地板
发表于 2015-2-1 09:46:08 来自手机 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
简单生活 该用户已被删除
5#
发表于 2015-2-4 21:16:22 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
透明 该用户已被删除
6#
发表于 2015-2-6 21:26:39 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
活着的死人 该用户已被删除
7#
发表于 2015-2-9 00:24:34 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
第二个灵魂 该用户已被删除
8#
发表于 2015-2-26 14:52:20 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
飘飘悠悠 该用户已被删除
9#
发表于 2015-2-27 23:35:35 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
精灵巫婆 该用户已被删除
10#
发表于 2015-3-9 15:20:57 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
蒙在股里 该用户已被删除
11#
发表于 2015-3-17 00:08:02 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
莫相离 该用户已被删除
12#
发表于 2015-3-17 00:08:05 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
老尸 该用户已被删除
13#
发表于 2015-3-23 08:10:42 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 19:23

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表