java - JPA 客户端-服务器复制/同步框架?

标签 java jakarta-ee jpa persistence derby

我有一个简单的客户端(JavaSE、Swing)-服务器(Java EE、EJB、JPA)架构。

我想为我的服务器端实体创建一个客户端“缓存”。例如,如果我下载一个实体,我会将其存储在嵌入式 Derby DB(带有客户端 JPA)中,因此下次需要时,客户端可以首先在自己的数据库中查找并从那里检索实体以节省网络通信。 (简单复制)

我的问题始于实体的 ID:在客户端和服务器端使用相同的 ID 听起来确实很糟糕,因此我应该存储实体的客户端 ID 和服务器端 ID 的一些映射。 问题仍然存在,因为我有很多实体(15~20..),以及它们之间的关联。

将正确的 ID-s 放置在服务器通信(更新、合并)或客户端上,可以促进一些递归的、可能是反射的代码,即一个持续跟踪映射的 ID-s 的引擎:

  • 如果我修改了客户端实体,并且想要合并到服务器,则在发送到服务器之前,它应该替换实体集中的客户端 ID(在各种 @OneToMany 外键中)
  • 从服务器端来看,问题是反之亦然

有人知道这样的框架吗,特别是对于 JPA 用户来说?或者您有一些实现技巧吗? //如果可能的话,我想在应用程序持久性级别解决这个问题

提前致谢, 安德拉斯升

最佳答案

什么不使用相同的id?看来如果你不尝试不同的问题,你就不会有任何问题......

关于java - JPA 客户端-服务器复制/同步框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7886976/

相关文章:

java - 从插件: "org.eclipse.jface"调用代码时出现问题

java - 如何查找另一个应用程序中字段的 Intent 键(尝试添加额外的联系信息但找不到该键)

java - 使用其他模块的 spring bean?

java - 无法让@Transactional 在 Spring 3 中正常工作

java - 使用 hibernate 的点 "."不敏感搜索?

jakarta-ee - 跨 WebLogic WorkManager 线程共享事务(使用 CommonJ)

java - 支持 Spring 的 Web 应用程序

jpa - 如何使用 JPA GROUP BY 获取 SELECT 值和 COUNT 值?

java - 用MySQL玩转2框架spring data

java - session 中多个属性的性能影响?