考虑应将其数据存储在远程服务器上的客户端应用程序。我们不希望它“在运行中”访问此数据,而是希望它在本地数据库中拥有此数据的副本。所以我们不需要连接远程服务器来使用应用程序。最终我们想要将本地数据库与远程服务器同步。我所说的最好的例子是Evernote服务。这种类型的应用程序非常常见,例如,在移动开发中,用户无法保证具有永久的Internet连接,带宽有限且流量可能很昂贵。
ORM(对象关系映射)解决方案通常允许开发人员为其业务逻辑数据定义一些中间“模型”。然后在它的编程语言中使用它作为一些对象层次结构,能够存储它的关系数据库。
为什么不向ORM系统添加一个允许自动同步两个共享相同数据模型的数据库(客户端和服务器)的功能?这将简化开发上述类型I的应用程序。是否有任何系统适用于实现此功能或类似功能的任何平台或语言?
答案 0 :(得分:1)
此链接可能会提供一些有用的信息
http://gwtsandbox.com/?q=node/34
http://www.urielkatz.com/archive/detail/google-gears-orm-v01/
答案 1 :(得分:1)
AFAIK,没有这样的ORM工具。
这是我们团队的原始目标之一(我是DataObjects.Net开发人员之一),但此功能是still not implemented。可能,今年春天我们将开始进行数据库同步,但由于几乎没有任何工作,所以没有确切的截止日期。
答案 2 :(得分:0)
至少有一个开源ORM符合您的需求,但它是Delphi ORM。
它被称为mORMot,并在无状态/无REST架构中使用JSON通过GDI消息,命名管道或HTTP / 1.1进行通信。它可以连接到any database engine,并嵌入优化的 SQlite3 引擎。
这是一个真正的客户端 - 服务器 ORM。也就是说,ORM不仅用于对象的数据持久性(如在其他实现中),而是用作全局n层,面向服务的体系结构的一部分。 这确实有所不同。