Java数据对象技术JDO三.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java数据对象技术JDO三 项目目录结构   对于Media Mania应用开发环境来说,你需要采用下面的目录结构,这个项目必须有一个根目录,存在于系统的文件体系的某个地方。下面这些目录都是以这个根目录为基准的:   src   这个目录包括应用的所有源码。在src目录下,有一个按照com/mediamania/prototype结构的子目录体系(与Java中的totype包相对应)。这也是Movie.java、Actor.java和Role.java源文件所在的目录。   classes   当Java源码被编译时,生成的.class文件置于这个目录中   enhanced   这个目录存放增强后的.class类代码文件(由增强器所产生)   database   这个目录存放JDO参考产品用于存储数据的文件。 尽管这样的目录结构并不是JDO规范所要求的,但你得理解它,这样才能跟随我们对Media Mania应用的描述。   当你执行你的JDO应用时,Java运行环境必须调入增强版本的类文件,也就是处于enhanced目录中的类文件。因此,在你的CLASSPATH中这个目录必须处于classes目录之前。作为一种可选方案,你也可以采用就地增强,用你的增强后的类文件直接替换未增强的文件。   增强类代码以便存储   类在其实例被JDO环境处理之前必须先被增强。JDO增强器在你的类中加入额外的数据和方法,使其实例可以被JDO产品处理。增强器先从由javac编译器所产生的类文件中读取信息,再根据元数据来生成新的增强过的包含必要功能的类文件。JDO规范化了增强器所做的改变,使得增强后的类文件具有二进制兼容性,可以在其它的JDO产品中使用。这些增强后的文件也独立于任何具体的数据库。 前面已经提到,Sun公司提供的JDO参考产品中的增强器称作参考增强器。而JDO产品厂商一般可能会提供自己的增强器;在命令行调用增强器的语法可能会与这里提到的有所不同。每个产品都会向你提供文档以阐释如果在该产品上对你的类进行增强。   例1-5给出了使用参考增强器对我们的Media Mania应用的类进行增强的命令行。-d参数指明将要存放增强后的类文件的目录,我们已经计划放到enhanced目录下。增强器接收一系列JDO元数据文件和一系列需要增强的类文件作参数。目录之间的分隔符和续行符(line-continuation)可能会不一样,这依赖于你进行编译的操作系统。   例1-5 对类进行增强   java com.sun.jdori.enhancer.Main -d enhanced   classes/com/mediamania/prototype/package.jdo   classes/com/mediamania/prototype/Movie.class   classes/com/mediamania/prototype/Actor.class   classes/com/mediamania/prototype/Role.class 尽管将元数据文件与源代码放在一起会比较方便,JDO规范还是推荐元数据文件可以作为与类文件一起作为资源被类载入器(ClassLoader)调入。元数据在编译时和运行时都需要,所以,我们将package.jdo元数据文件放在classes目录体系中的prototype包的目录中。   在例1-5中,我们的对象模型中的所有.class类文件被一起列出,但你也可以将每个类文件单独增强。当这个增强命令执行时,它将增强后的新文件放到enhanced目录下。   创建数据库连接和事务 现在既然我们的类已经被增强了,它们的实例也就可以被储存到数据库中了。我们现在来看看应用中如果创建一个与数据库的连接并在一个事务(Transaction)中执行一些操作。我们开始写直接使用JDO接口的软件代码,所有的在应用中用到的JDO接口都定义在javax.jdo包中。   JDO中有一个接口叫做PersistenceManager(存储管理器,见术语表),它具有一个到数据库的连接。一个PersistenceManager还有一个JDO中的Transaction(事务)接口的实例,用于控制一个事务的开始和结束。这个Transaction实例的获取方式是调用PersistenceManager实例的currentTransaction()方法。   获取一个PersistenceManager   PersistenceManagerFactory(存储管理器工厂,见术语表)用来配置和获取PersistenceManager。PersistenceManagerFactory中的方法用来设置一些配置属性,这些配置属性控制了从中获得的Per

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档