使用RSA V7.5中的UML-to-JPA转换加速JPA开发 - 编程入门网
jpa.enhance.PCEnhancer)对实体类进行处理的 过程,被 Enhance 过的实体类能够支持性能优化、懒惰式装载等高级特性。 JPA 规范约定容器必须在部署时对 JPA 实体进行增强,对于非容器运行的情况, 您可以选择运行时增强或者编译时增强。
通常情况下,编译时增强更加 受欢迎,因为不需要运行时添加特别的参数。但是如果没有开发工具的支持,您 可能需要在命令行调用编译命令。幸运的是,RSA 允许我们为项目配置多种编译 ,我们可以使用 JPA 提供的 ANT 任务来实现编译时增强,这种配置是一劳永逸 的。首先我们需要创建一个 build.xml 文件,请参考清单 4 的内容在 SampleModelPersistence 项目中创建 build.xml。 清单 4. build.xml 的内容
然后我们需要为 JPA 的增强创建一个单独 的 builder,请选择 SampleModelPersistence 项目,单击右键菜单中的 Properties 菜单,在弹出的对话框中的左侧树中选择 Builders 节点,如图 17 ,在右侧的属性页中选择“New..”按钮。 图 17. 为 SampleModelPersistence 项目创建 JPA 增强 Builder 使用RSA V7.5中的UML-to-JPA转换加速JPA开发(11)时间:2010-11-20 IBM 赵勇 黄若波 任静安在打开的对话框中进行该 Builder 的配置,首先输入 builder 名称 “JPA _Builder”,然后配置设置项目基础路径和 ANT 编译脚本的 位置,具体的配置值请参考图 18。 图 18. JPA 编译时增强的配置 同样在 Targets 页面中,设定 build 的目标为“enhance”,在 Class path 页面中需要增加 JPA 的 jar 包 (com.ibm.ws.jpa.thinclient_7.0.0.jar )到编译路径中。点击 OK 保存设置 ,此时运行编译项目,RSA 就会自动的对编译后的实体类进行二进制代码级别的 增强。 单元测试 到此我们就可以通过单元测试在非服务器环境中 测试 JPA 的持久化功能了。请参考下载资料中的 SampleModelPersitenceTest 项目,在 ModelTest 类中我们的 testSaveInvoice 测试方法可以很好的使用 JPA 的 API 自动保存 Invoice 实体,避免了我们在保存和加载持久化对象时使 用大量重复的 SQL 语句和映射代码。通过清单 5 中的测试代码,我们可以看到 ,由 JPA Transformation 生成的 JPA 实体可以很好的和数据库交互。 清单5. 用于测试持久化实体的JUNIT测试用例
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |