ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:38.16KB ,
资源ID:8454893      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8454893.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Toplink JPA.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Toplink JPA.docx

1、Toplink JPAToplink JPAToplink是Oracle公司捐献给开源社区的,是最早的ORM映射框架之一,也是对JPA规范支持最好的一个框架。它遵循CDDL v1.01开源许可协议,官方主页是http:/www.oracle. com/ technology/global/cn /products/ias/ toplink/index.html。14.3.1 Toplink 与JPA Toplink最新的版本是Version 2 Build 41,Oracle已经将其捐献给Eclipse社区,并且在Sun的开源应用服务器Glassfish中,被使用为默认的JPA的实现。由于它有

2、良好的商业背景及广泛的应用,因此对使用JPA的开发人员来说,它便是更好的实现者选择。14.3.2 Toplink下载 使用浏览器打开下载后找到一个JAR包文件glassfish-persistence-installer-v2-b41.jar,它是可运行的JAR包,需要使用命令行解压缩。例如笔者将其保存在E:down文件夹下,则命令行的命令如下所示。java -jar glassfish-persistence-installer-v2-b41.jar运行后,命令行页面如图14-7所示。 图14-6 Toplink下载页面 图14-7 解压缩Toplink文件解压缩文件后,会在相应的文件目录下

3、生成glassfish-persistence文件夹,例如这里生成的目录是E:downglassfish-persistence。在该文件目录下,找到如下所示的两个JAR包文件,这些就是Toplink运行所必需的类包。 toplink-essentials.jar:Toplink的核心类包文件。 toplink-essentials-agent.jar:Toplink运行时代理类包,支持JVM级别的AOP。方法: oracle.toplink.essentials.PersistenceProvider com.User 配置日志在Toplink中有关日志配置可以有多种情况,例如日志的级别、日

4、志的输出内容等。这些日志的配置如以下属性所示。 属性名:toplink.logging.logger描述:日志的实现类名。可选值: DefaultLogger(默认):Toplink默认的日志实现类,oracle.toplink.essentials.logging. DefaultSessionLog。 JavaLogger:使用JDK自带的java.util.logging的实现类,oracle.toplink.essentials.logging. JavaLog。 自定义日志类的全名:如com.fengmanfei.jpa.logger.MyCustomLogger,自定义的日志类必须

5、实现oracle.toplink.essentials.logging.SessionLog类。示例如下: 属性名:toplink.logging.level描述:日志级别,这些值定义在java.util.logging.Level类中。可选值:级别由低到高顺序依次如下所示。 OFF:不记录任何日志。 SEVERE:记录Toplink不能继续运行时的严重异常和登录时的异常,并且记录异常的堆栈信息。 WARNING:记录Toplink并不是影响运行的异常没有记录到SEVERE 级别的异常,但这种方式记录的异常不包含堆栈信息。 INFO(默认):记录每次的登录和退出会话的信息(包括用户名)和会话连

6、接后详细的登录信息。 CONFIG:仅记录登录、JDBC连接和数据库信息。 FINE:记录SQL执行的语句。 FINER:记录的内容与WARNING 级别相同,但记录中包括异常的堆栈信息。 FINEST :记录所有的日志信息。示例如下: 属性名:toplink.logging.level.描述:配置不同日志类别的级别,日志的分类都定义在oracle.toplink.essentials.logging. SessionLog类中。可选值: SQL:SQL日志。 TRANSACTION:事务相关日志。 EVENT:事件相关日志。 CONNECTION:数据库会话相关日志。 QUERY:查询数据库

7、相关日志。 CACHE :缓存相关日志。 SEQUENCING:生成sequence相关日志。 EJB:EJB日志。 DMS:Oracle动态监控系统(Oracle Dynamic Monitoring System )相关日志。 EJB_OR_METADATA :EJB注释相关日志。 WEAVER :类织入(class weaver)日志。 PROPERTIES :开发环境属性相关日志。示例如下: 属性名:toplink.logging.timestamp描述:是否输出日志的时间戳。可选值: true(默认):记录时间戳。 false:不记录时间戳。示例如下: 属性名:toplink.log

8、ging.thread描述:是否输出日志线程ID。可选值: true(默认):记录线程ID。 false:不记录线程ID。示例如下: 属性名:toplink.logging.session描述:是否输出日志会话ID。可选值: true(默认):记录会话ID。 false:不记录会话ID。示例如下: 属性名:toplink.logging.exceptions描述:是否在应用程序抛出异常之前记录异常日志。可选值: true:记录所有的异常。 false(默认):不记录应用程序的异常。示例如下:配置缓存缓存能够提高系统的性能,系统要根据不同的需求选择最佳的优化方式。Toplink提供了各种情况下,

9、各种缓存的设置方式,这些配置如下所示。 属性名:toplink.cache.type.default描述:默认会话缓存的类型,这些值是定义在oracle.toplink.essentials.config.CacheType类中的常量。可选值: Full:完全缓存实体,实体只有删除后才同时删除内存中的缓存。建议在数据量小,内存足够大时采用该种缓存类型。 Weak:与Full类似,不过缓存采用的是弱引用(Weak Reference)的方式,当垃圾回收时,会自动回收弱引用的对象。如果使用了事务,建议采用该种缓存方式。 HardWeak :与Weak类似,但是对二级缓存采用强缓存(Hard Ref

10、erence)。 SoftWeak(默认):与Weak类似,但是对二级缓存采用软缓存(Soft Reference)。当内存不足时,Toplink会自动优化回收缓存的对象,大多数情况下,建议采用该配置。 NONE:不缓存实体,不建议采用该配置。 提示 有关弱引用、软引用的相关知识涉及JVM底层对象引用优化的内容,读者若想进一步了解,可以参阅java.lang.ref.SoftReference和java.lang.ref.WeakReference类相关知识。示例如下: 属性名:toplink.cache.size.default,描述:默认缓存的最大容量,可以为0到Integer.MAX_V

11、ALUE之间的数值,默认为1000。示例如下: 属性名:toplink.cache.shared.default描述:默认是否共享缓存。可选值: true(默认):多个会话共享缓存。 false:每个会话分别缓存。示例如下: 属性名:toplink.cache.type.描述:针对特定实体设置缓存类型,其中ENTITY为Entity标注的实体名称,类型值toplink.cache.type.default配置相同。可选值: Full:同toplink.cache.type.default。 HardWeak:同toplink.cache.type.default。 None:同toplink.

12、cache.type.default。 SoftWeak(默认):同toplink.cache.type.default。 Weak:同toplink.cache.type.default。示例如下: 属性名:toplink.cache.size.描述:针对特定实体缓存的最大容量,可以为0到Integer.MAX_VALUE之间的数值,默认为1000。示例如下: 属性名:toplink.cache.shared.描述:指定实体是否共享缓存。可选值: true(默认):多个会话共享缓存。 false:每个会话分别缓存。示例如下:配置JDBC和数据库在J2SE环境中,配置JDBC时可以采用如下所示

13、的配置进行优化。 属性名:toplink.jdbc.bind-parameters描述:是否使用预编译SQL和参数查询。可选值: true(默认):预编译SQL和参数查询。 false:不使用。示例如下: 属性名:toplink.jdbc.driver描述:JDBC驱动的类的全名。示例如下: 属性名:toplink.jdbc.password描述:JDBC连接的密码。示例如下: 属性名:toplink.jdbc.read-connections.max描述:读取JDBC数据库时最大连接数,可以为0到Integer.MAX_VALUE之间的数值,默认为2。示例如下: 属性名:toplink.jd

14、bc.read-connections.min描述:读取JDBC数据库时最小连接数,可以为0到Integer.MAX_VALUE之间的数值,默认为2。示例如下: 属性名:toplink.jdbc.read-connections.shared描述:读取数据库时,是否共享连接。可选值: true:允许用户共享连接。 false(默认):不共享连接。示例如下: 属性名:toplink.jdbc.url描述:JDBC连接的URL。示例如下: 属性名:toplink.jdbc.user描述:JDBC连接的用户名。示例如下: 属性名:toplink.jdbc.write-connections.max描

15、述:写JDBC数据库时最大连接数,可以为0到Integer.MAX_VALUE之间的数值,默认为10。示例如下: 属性名:toplink.jdbc.write-connections.min描述:写JDBC数据库时最小连接数,可以为0到Integer.MAX_VALUE之间的数值,默认为5。示例如下:另外,如果在J2EE环境中,也可以配置数据库相关的具体配置,如下所示。 属性名:toplink.target-database描述:指定JPA使用的数据库类型,这些值定义在oracle.toplink.essentials.config.Target Database枚举类型的常量中。可选值:Au

16、to(默认)、Attunity、Cloudscape、Database、DB2、DB2Mainframe、DBase、Derby、HSQL、Informix、JavaDB、MySQL4、Oracle、PointBase、PostgreSQL、SQLAnyWhere、SQLServer、Sybase和TimesTen。示例如下: 属性名:toplink.session-name描述:指定会话的名称,如果要在持久化上下文外访问Toplink会话需指定该名称。如果不指定,则自动生成一个唯一标识。示例如下: 属性名:toplink.target-server描述:指定JPA运行的服务器类型,这些值定义

17、在oracle.toplink.essentials.config.Target Server枚举类型的常量中。可选值:None(默认)、OC4J_10_1_3、SunAS9。示例如下:配置DDLDDL是针对映射是否自动更新数据库脚本的配置,配置这些内容可以优化对DDL的支持。有关DDL的配置如下所示。 属性名:toplink.ddl-generation描述:指定DDL生成方式,这些值定义在cle.toplink.essentials.ejb.cmp3.EntityManager FactoryProvider类中。可选值: none(默认):不生成DDL,不自动生成数据库。 create-

18、tables:只生成不存在的表,不改变原有表结构。 drop-and-create-tables:删除原表,重新生成新表。示例如下: 属性名:toplink.application-location描述:指定DDL生成SQL脚本的文件的目录,默认为当前的.+File.separator。示例如下: 属性名:toplink.create-ddl-jdbc-file-name描述:指定DDL生成创建SQL脚本的文件名,默认为createDDL.jdbc。示例如下: 属性名:toplink.drop-ddl-jdbc-file-name描述:指定DDL生成删除SQL脚本的文件名,默认为dropDDL

19、.jdbc。示例如下: 属性名:toplink.ddl-generation.output-mode描述:指定DDL的输出方式,这些值定义在cle.toplink.essentials.ejb.cmp3.EntityManager FactoryProvider类中。可选值: both(在J2SE中默认):即生成SQL文件,又在数据库中执行。 database:仅在数据库中执行。 sql-script(在Java EE中默认):仅生成SQL文件。示例如下:配置查询优化在本书的第9.3.6节中,曾讲述了对于不同的实现框架,可以设置提示来优化查询。Toplink中也提供了针对查询的优化配置,这些可

20、配置的常量都定义在oracle.toplink. essentials.config. TopLinkQueryHints 类中。 属性名:toplink.jdbc.bind-parameters描述:是否使用参数查询,可设置的值都定义在oracle.toplink.essentials.config.HintValues类中。可选值: true:使用参数查询。 false:不使用参数查询。 PersistenceUnitDefault(默认):根据JDBC的设置决定是否使用参数查询。示例如下:import oracle.toplink.essentials.config.HintValues

21、;import oracle.toplink.essentials.config.TopLinkQueryHints;query.setHint(TopLinkQueryHints.BIND_PARAMETERS, HintValues.TRUE); 属性名:toplink.pessimistic-lock描述:是否使用悲观锁(Pessimistic Lock),可设置的值都定义在oracle.toplink.essentials. config.PessimisticLock类中。可选值: NoLock(默认):不使用悲观锁。 Lock:相当于SELECT . FOR UPDATE。 LockNoWait:相当于SELECT . FOR UPDATE NO WAIT。示例如下:import oracle.toplink.essentials.config.PessimisticLock;import oracle.toplink.essentials.config.TopLinkQueryHints;query.setHint(TopLinkQueryHints.PESSIMISTIC_LOCK, PessimisticLock.LockNoWait); 属性名:toplink.refresh描述:是否更新查询结果中会话缓存中的对象,可设置的值都定义在

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1