可以在没有JPA的情况下使用Play,交换自己的CRUD实现吗?

时间:2011-05-16 10:10:44

标签: rest jpa playframework

我正在评估play作为SOA环境中一系列应用程序的管理系统使用。

每个应用程序都有自己的持久性,可以针对每个应用程序中的REST端点执行各种CRUD操作。

免费管理员是一个吸引人的游戏,但我想用一个REST客户端替换JPA实现,该客户端通过与每个应用程序的REST端点进行通信来执行CRUD。

更换JPA实现有多容易?怎么做?

感谢。

2 个答案:

答案 0 :(得分:3)

这不是那么复杂 我在Siena上工作,这是一个用于NoSQL / SQL的轻量级对象映射框架,我们有2个模块用于播放:play-siena允许使用Siena而不是JPA和crudsiena,它提供基于Siena的Crud以及日期选择器和列表的一些增强功能/地图管理。
play.db.Model设计是可扩展和可重用的(它也被Morphia用于MongoDB),JPA代码对于查看必须完成的工作非常有用。
Crud的设计不是可扩展的或继承的,所以你必须重新定义很多东西,但是看一下代码,它可以让你很好地了解所需的机制。

答案 1 :(得分:1)

CRUD通过检查与CRUD控制器相关的实体来工作。它加载具有相似名称(或注释)的模型,并根据实体的注释/类型决定要显示的内容。

如果您想拥有一个显示REST服务提供的数据的CRUD屏幕,我认为您可以更轻松地创建自己的UI。如果你想要这样的外观,你可以重用CRUD的布局(模板,css等),并使用WS库和Play轻松编写其余的代码。