简体   繁体   English

Java / adobe air中的脱机在线应用程序体系结构

[英]offline online application architecture in java/adobe air

Recently one of my friend has asked me to design an application with feature to work both offline and online. 最近,我的一位朋友要求我设计一个具有可离线和在线使用的功能的应用程序。 I have been reading a bit about it online and found few options. 我一直在网上阅读有关它的内容,发现很少有选择。

  1. Using Adobe Air with a central web app which will be master and synced with local db(sqllite/derby). 将Adobe Air与中央Web应用程序配合使用,该Web应用程序将成为主数据库并与本地db(sqllite / derby)同步。
  2. Using JavaFx2 same as above. 使用与上述相同的JavaFx2。
  3. A pure web based model(spring 3 mvc/jsf2) with embedded db apache derby/hsql/sqllite and servlet container Jetty for local/offline support and a master web app for online activities. 一个纯基于Web的模型(spring 3 mvc / jsf2),具有嵌入式db apache derby / hsql / sqllite和servlet容器Jetty,用于本地/离线支持,以及用于在线活动的主web应用程序。

I'll really appreciate if people out there those who have done this kind of application please share their experience, how to go about such an application and what can be pros and cons of different approaches. 如果要让那些完成了这种应用程序的人在那里分享,我将不胜感激,请分享他们的经验,如何进行这种应用程序以及不同方法的优缺点。

PS: I want to be in java or adobe stack. PS:我想放在Java或Adobe堆栈中。

We've done somethong similar with Eclipe RCP application and mySql local database. 我们已经完成了与Eclipe RCP应用程序和mySql本地数据库类似的操作。

Technically, that was not too complex, just be careful of the perf when a big synchro starts. 从技术上讲,这并不太复杂,只需在大型同步开始时注意性能。

The difficult point is to manage the rules around the synchronisation of the data. 难点在于管理围绕数据同步的规则。 Best is - if you can - to have tables only sync in one way (reference data from master to local, for example). 最好是-如果可以的话-仅使表以一种方式同步(例如,参考数据从主数据库到本地数据库)。 An other good thing is to store where your data comes from for each row, this may help your sync rules. 另一件事是存储每一行​​数据的来源,这可能有助于您的同步规则。

hth hth

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM