用apachederby进行开发——取得节节胜利用apachederby进行java数据库开发第6部分

用apachederby进行开发——取得节节胜利用apachederby进行java数据库开发第6部分

ID:9355856

大小:62.00 KB

页数:13页

时间:2018-04-28

用apachederby进行开发——取得节节胜利用apachederby进行java数据库开发第6部分_第1页
用apachederby进行开发——取得节节胜利用apachederby进行java数据库开发第6部分_第2页
用apachederby进行开发——取得节节胜利用apachederby进行java数据库开发第6部分_第3页
用apachederby进行开发——取得节节胜利用apachederby进行java数据库开发第6部分_第4页
用apachederby进行开发——取得节节胜利用apachederby进行java数据库开发第6部分_第5页
资源描述:

《用apachederby进行开发——取得节节胜利用apachederby进行java数据库开发第6部分》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、简介: 了解如何构建一个自包含(self-contained)、可部署的嵌入式ApacheDerby数据库应用程序。本文是本系列的最后一篇文章,您将把数据库表映射到Java™类中,编写DataAccessObject(DAO)并将它们与业务逻辑类一同集成到完成的数据库应用程序中。您还将了解如何把应用程序与必要的Derby数据库文件打包在一起,创建一个包含数据库应用程序所有必要内容的压缩文件。开发嵌入式ApacheDerby应用程序回想在本系列的文章中,您一直在使用ApacheDerby数据库。De

2、rby数据库支持两种交互模式:网络模式和嵌入模式。较为熟悉的交互模式可能是网络模式,在这种模式下,数据库服务器运行在一台计算机上,并且数据库客户机通过网络连接连接到中央服务器上。这种设置描述了大多数商业数据库的安装设置,通常都是遵循事务处理模型。关于ApacheDerby和Java的更多信息:·使用Derby创建wiki系统,第2部分:Java函数、过程和触发器·利用Stripes、ApacheDerby和Eclipse进行无配置的J2EE开发·将任意数据持久存储到ApacheDerby中·关于I

3、BMCloudscape的更多信息另一个模型是嵌入模式,在这种模式下,应用程序不但包含实现必要业务逻辑的软件,而且包含数据库引擎软件。最终,应用程序可以完全自包含,有助于简化安装和设置过程。为了强调这一点,因此考虑在本系列的所有文章中,始终只以嵌入模式使用ApacheDerby数据库。现在就要开始开发您自己的嵌入式Derby数据库应用程序。开发嵌入式数据库应用程序的过程一般可以分为三个步骤:1.将数据库逻辑映射到Java类中。2.开发管理数据库专有功能的Java代码。3.实现Java应用程序中的业

4、务逻辑。这一节的其余部分先详细讨论这三个步骤,然后再继续讨论如何部署嵌入式ApacheDerby应用程序。对象-关系映射本系列中的前几篇文章已经通过使用虚构的Bigdog的SurfShop业务介绍了数据库概念。这个简单的数据库将管理冲浪器材店的存货,主要关注包含冲浪器材店产品的数据库表。在本文中,您将开发一个显示冲浪器材店存货中具体项目详细清单的应用程序。对象-关系映射软件在本文中,您将显式构造Java代码,从而将关系数据库数据映射到Java类中。假定这个问题会给大型软件项目增加一定的复杂度,自动

5、执行此过程可以减少发生软件错误的可能性。若干个商业和开源软件产品可以与ApacheDerby数据库结合使用以自动执行此过程。您可以在本文的参考资料部分中找到这些产品的完整清单链接。需要处理的第一步是实现映射到产品的Java类,该产品是bigdog.products表中的一行。在执行此操作时,您会遇到一个问题:表模式是在SQL中定义的,然而业务应用程序是用Java语言定义的。在SQL关系数据模型与Java对象模型之间映射有时会带来挑战,尤其是对于涉及通过主键-外键连接许多表的复杂数据库模式(或Jav

6、a对象模型)。在形式上,此过程被称为对象-关系映射(Object-RelationalMapping,ORM)。但是,对于这个演示应用程序,您将面对的惟一复杂度是如何把bigdog.products表的模式中使用的SQL数据库类型映射到适当的Java数据类型中。在本例中,过程相对简单,如清单1所示,在该清单中将定义Product类。清单1.将产品表映射到JavaProduct类publicclassProduct{privateintitemNumber=0;privateBigDecimalpr

7、ice=null;privateDatestockDate=null;privateStringdescription=null;publicProduct(intitemNumber,BigDecimalprice,DatestockDate,Stringdescription){this.itemNumber=itemNumber;this.price=price;this.stockDate=stockDate;this.description=description;}publicvoid

8、printProduct(){Stringline="------------------------------------";System.out.println("Bigdog'sSurfShopProductInformation");System.out.println(line+line);System.out.printf("ItemNumber:%-11s",this.itemNumber);System.out.printf("ItemPrice:$%-8

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。