Web应用程序,离线mod&同步

时间:2016-03-18 09:36:31

标签: java mysql html5 hibernate synchronization

在我们学习的最后一年,我们是一个由6名学生组成的小组 我们必须在现有的Web应用程序上添加新功能。最重要的功能之一,在我们看来,最难实现的功能如下:即使离线,Web应用程序也必须正常运行。
至于,您必须能够查询数据,更改数据,以及当您的设备能够再次连接时,应用程序必须尝试与在线数据库同步。当前的应用程序使用以下技术:apache tomcat / mySQL / Hibernate / JavaEE / JavaScript / Ajax / xHTML& HTML5。

考虑到将使用该应用程序的主要设备主要是数字平板电脑,智能手机(Windows和Android,现在不是iOS)和Windows PC;我的主要问题是以下一个:

你怎么能做这种事?

我做过一些研究,看起来你必须做一个“第二次”的研究。应用程序,主要使用HTML5在离线和JavaScript时查询数据,以控制用户正在做什么以及他可以做什么。但我们不知道同步。似乎SQLite也可以使用

我知道这是一个普遍的问题,但我们正处于尝试的阶段,确保每个人都明白接下来的步骤是什么。感谢您的帮助和解释。

2 个答案:

答案 0 :(得分:1)

解决方案-1:自定义解决方案

有一些api可用于在javascript中本地存储名为indexDb的数据,这可能有助于存储数据。

对于同步,我发现服务人员可能会提供帮助。

解决方案-2:现成的工具

您也可以尝试pouchdb,但为此我认为在服务器端您必须使用apache couchdb数据库。我没有使用它,但想尝试一次。

答案 1 :(得分:0)

查看Service-Worker API。服务工作者是一个可编程网络代理,允许您控制如何处理来自页面的网络请求。这是App Cache之后为用户提供离线体验的下一代产品。 服务工作者 - 结合本地存储甚至更好的WebSQL或像localforage这样的polyfill可以成为实现这种应用程序的一种方式。

下行:服务工作者需要SSL,没有办法解决这个问题。其次,只有最新的chrome和firefox支持这些技术。

您可以将PWA Progressive Web Application作为关键字进行查找,该关键字描述/并使用这种技术。