快速业务通道

在Eclipse中开发Apache Derby应用程序 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
values(3, ''SQL for Dummies'', ''Allen G. Taylor'', 16.49, 6, 0); disconnect;

然后就可以在 Project Explorer 中右击该文件并选择“Apache Derby->Run SQL script using ij”。Eclipse 的控制台输出视图将显示执行的结果,这个结果应该是成功的。然后可以在 Database Explorer 中选择 books 表,并选择“Sample Content”,以确信数据真正被插入到这个表中。

图 5. 执行 SQL 脚本以插入数据

在Eclipse中开发Apache Derby应用程序(6)

时间:2011-02-16 IBM Gilles Roux

编写 Derby Client JDBC 应用程序

装载 JDBC 驱动程序

通过使用 Eclipse JDT 和 Derby JDBC 驱动程序,可以很容易地编写 JDBC 应用程序。首先使用 JDT Class 向导在 bookstoreapp.clientside 包中创建一个 Inventory 类,并在类中添加一个 main() 方法。由于启用了 Derby nature,所以包含 JDBC 驱动程序和 Derby 类的 JAR 文件已经位于项目的类路径中。

在连接到一个 Derby 数据库之前,需要使用 Class.forName(jdbcDriverClassName) 方法装载适当的 JDBC 驱动程序。该方法将装载参数指定的 JDBC Driver 类,并注册这个类,以便进行下一次 JDBC 连接。

可以使用两种不同的 JDBC 驱动程序,这取决于 Derby 配置:

表 3. Derby JDBC 驱动程序

配置 Embedded Server Network Server
所需 JAR 文件 derby.jar db2jcc.jar;db2jcc_license_c.jar
类名 org.apache.derby.jdbc.EmbeddedDriver com.ibm.db2.jcc.DB2Driver

由于这个例子是基于一个网络服务器配置,因此这里使用 jcc JDBC 驱动程序。如果不确定的话,那么正确的类名可以通过从 Connection 向导复制获得:

清单 3. 装载 jcc JDBC 驱动程序

Class.forName("com.ibm.db2.jcc.DB2Driver");

连接到数据库

DriverManager.getConnection(url) 方法用于建立到数据库的连接。它假设一个连接 URL,并返回一个 Connection 对象,这个对象可用于查询数据库。

获得连接 URL 的一种好方法是在 Database Explorer 视图中编辑 Derby 连接,并复制从各个连接属性自动构造而成的连接 URL。出于安全的原因,这里没有显示用户名和密码,因此在应用程序代码中需要手动地将它们添加到 URL 的后面。

图 6. 使用连接向导构建连接 URL

在Eclipse中开发Apache Derby应用程序(7)

时间:2011-02-16 IBM Gilles Roux

其他选项也可以添加到 URL 的后面。例如,retrieveMessagesFromServerOnGetMessage=true 选项指示 JDBC 驱动程序从 Derby 服务器获取可读的错误消息,这在调试连接到远程 Derby 数据库的应用程序时非常有用。

在本文的例子中,使用下列代码连接到 Derby 数据库:

清单 4. 连接到数据库

String url = "jdbc:derby:net://localhost:1527/bookstoredb"; url += ":user=bookstore;password=aaa;"; url += "retrieveMessagesFromServerOnGetMessage=true;"; Connection con = DriverManager.getConnection(url);

查询数据库

一旦建立了连接,便可以通过使用 JDBC API 查询数据库。例如,您可以创建一个 Statement 对象,然后使用这个对象来执行对数据库的 SQL 查询。查询返回一个用于迭代查询结果集的 ResultSet 对象:

清单 5. 执行查询并迭代结果集

Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM bookstore.books"); while (rs.next()) { 

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号