在Play Framework之外访问Play Framework模型

3
我们有一个大型离线处理流程,它会更新我在Play Framework中设计的模型。我认为将此代码作为独立项目保留是有意义的,但我希望它能够使用Play内部设计的JPA模型。
我想知道是否有一种好的方法来处理这个问题 -- 一种在另一个普通Java项目中引用Play框架内JPA模型的方法。
另一个选择是创建一个API,供外部进程调用,这是我目前所做的,但它会引入很多不必要的网络延迟。
有什么建议可以实现这个需求吗?

为什么不为您的离线流程创建一个Play作业?如果没有依赖于Play库,则不能将其剥离到普通的项目中。 - basav
1个回答

2
传递一个特定于Play的JPA实体(即扩展Model的实体)可能不是一个好主意。这样会在不需要Play JAR文件的地方引入依赖。
我认为你有两个可行的选择:
1. 创建一个POJO对象,并使用Hibernate Xml Config(对于小于2.0版本的Play)来定义与数据库的映射。你可以完全将POJO和配置分开——即将配置保留在Play应用程序的类路径中。 2. 以序列化形式(例如XML或JSON)传递你的对象。

嗨,谢谢你。现在我正在走第二条路——但我会尝试一下第一条路——看看哪个更简洁。 - nostromo
实际上,我最终避免使用JPA,直接将数据直接输入到数据库中。所描述的方法最终变得太慢了。因此,我使用JPA构建模式,然后直接将数据写入数据库。 - nostromo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接