Java框架中的单页Web应用程序还是示例?[已关闭]

有没有人在Java中看到过一个例子或做过以下事情:http://duganchen.ca/single-page-web-app-architecture-done-right/

这是一个设计一个单页的Web应用程序,它将与Google SEO一起使用,而不会使用Java技术大规模违反DRY?

我自己做这件事似乎并不难,但我很好奇(而且很懒惰),看看是否有人已经用Spring或JAX-RS做到了这一点。


答案 1

我已经建立了一个相当大的“单页”javascript网站,可以在客户端上生成所有HTML。服务器仅提供 JSON 响应。我使用谷歌关闭工具的原因如下:

  • Google关闭模板允许使用高级模板语言(名为soy)设计模板,这些模板被编译为纯javascript函数以在客户端上运行,或java代码以在服务器站点上运行。

  • Google Closure Compiler,它允许将javascript代码分离到模块,并为未编译模式提供自动依赖注入。良好的程序结构和模块化对于任何超过简单html装饰的项目都是必要的。这很难用jQuery或dojo这样的框架来实现。在高级编译模式下,它将javascript转换为更短的更有效的等效项,消除死代码并显着减小大小,从而可以将原始代码库缩小到原始大小的几个百分比。

  • Google Stylesheets是元css语言,非常适合闭包编译器。

  • Google Closure Library是一个庞大且经过良好测试的javascript库,并且具有闭包编译器,您只需要获取所需的内容。

为了简化开发,我使用了由Michale Bolin编写的plovr,Michale Bolin是前谷歌用户,也是原始闭包编译器团队的成员之一。

我可以推荐阅读Michale的书:Closure,The Definitive Guide

我必须警告,最初的围唠曲线可能相当陡峭,但这是值得的。Google使用此工具编写了几乎所有的网络项目。

还有一件事

如果你真的喜欢冒险,并想窥探未来,我建议你用Clojure/ClojureScript升级以前的策略。首先,观看这个非常有说服力的Rich Hickey演讲,并确保检查Clojurescript一个项目


答案 2

我推荐AribaWEB的高级AJAX用法。

http://aribaweb.org/