使用丰富的JavaScript API开发数据访问的开放式Web应用程序的最佳现代方法是什么?

时间:2011-03-14 21:06:40

标签: java javascript java-ee server-side javascript-framework

我工作的公司有一个强大的基于Java的服务器组件框架,用于与特殊控制系统进行交互。

我们有一个UI框架,但这也是基于Java的。客户可以使用Java Applet访问控制信息等。

我最近开始使用丰富的JavaScript API远程访问此控制系统信息。它目前是一个原型。这很好,因为任何熟悉JavaScript的人都可以远程访问我们的组件。到目前为止它的效果非常好。我写了一些使用这个API的原型应用程序。这给了我一个关于jQuery的介绍 - 太棒了!我还添加了JavaScript API对Java进行RPC调用的能力,以及基于会话的组件体系结构,以便在您真正需要服务器上保存的内容时使用。

到目前为止一切顺利。我不得不承认,我不是一个'网络开发者'。我从未使用Structs,Spring或任何基于MVC的架构来进行严肃的基于企业的Web开发(尽管我非常熟悉设计模式)。我的背景是应用程序开发。

我想从专业人士那里了解这是否是正确的做法,或者我是否遗漏了任何东西。与我合作的人创建了一个非常巧妙的Server Side Include架构。但是,我现在想知道这是否真的有必要吗?之后,我想我可以使用我的JS API和jQuery创建任何东西。在这个开放网络应用程序的新时代,我应该考虑任何其他基于“服务器”的架构吗?

就浏览器支持而言,我并不关心老一代的浏览器(请不要在这里讲课,我们已经为IE6做过的老技术等等。)

通过使用这种开放的客户端技术,我将能够编写复杂的开放式Web应用程序。由于我的API,实际上需要很少的服务器端代码。我将能够利用HTML 5功能等。但我错过了什么吗?我应该考虑其他基于服务器端的Java技术,如Server Side Includes吗?我是否太注重客户了?

3 个答案:

答案 0 :(得分:2)

有四种方法可以创建现代RIA:HTML5 / Javascript,Java Applet,Flash / Flex和Silverlight。只有前两个是开放的。

小程序是令人讨厌的,并不是人们真正喜欢的。就个人而言,我会使用HTML / Javascript。

由于您是一家Java商店,我建议您使用GWT,原因如下:

  1. 这是开源的商业友好许可证。
  2. 它创建了浏览器优化的最小javascript。
  3. Google积极开发和使用它。这可以保证它会得到一段时间的支持。
  4. 有很多开发人员了解它。
  5. 它具有良好的文档和非常活跃的用户组。

答案 1 :(得分:1)

我确信对此有很多意见,但我的看法是使用HTML5,更快的Javascript解释器,客户端持久存储等等,这使得将所有UI应用程序登录到客户端非常引人注目(浏览器),只需使用某种形式的RPC(带有JSON序列化)到服务器。因此,交互式应用程序不再需要模板引擎,SSI或任何服务器端生成的标记。它对于半静态文档仍然没问题。为此,我使用sphinx文档生成器。

答案 2 :(得分:0)

快进两年,现在您可以TodoMVC随时帮助回答这个问题。仍然提到GWT,尽管就服务器端技术而言,The Holy Grail可能是您在客户端和服务器上最大化代码重用的目的。