![]() |
1
7
当然从Struts转移到AJAX框架是一种非常解放的体验。(虽然我们使用的是JSON而不是XML,解析起来要容易得多。)但是,您需要知道,它实际上是对应用程序的完全重写。 与MVC的经典Database/JSP/Actions方案不同,您将发现自己正在转向Servlet/Javascript方案,其中模型由HTTP GET请求表示,动作由POST/PUT/DELETE请求表示,视图由web浏览器动态呈现。这在每个领域都带来了有趣的挑战: 服务器端 -在服务器端,您需要开发一个向客户机公开数据的标准。最简单和最简单的方法是采用 REST 最符合数据层次结构的方法。这很容易用servlet实现,但Sun也开发了 Java 1.6 scheme 使用看起来很酷的属性。 服务器端的另一个方面是选择传输协议。我知道您已经提到了XML,但您可能需要重新考虑。不同浏览器的XML解析器差别很大。一个浏览器可能会使文档根成为第一个子级,另一个浏览器可能会添加一个特殊的内容对象,并且它们都会以不同的方式解析空白。更糟糕的是,主流浏览器似乎没有正确实现normalize()函数。这意味着XML解析可能充满了黑客。 JSON 更容易解析,结果也更一致。Javascript和Actionscript(Flash)都可以将JSON直接转换为对象。这使得访问数据成为一个简单的x.y或x[y]问题。还有很多API可以处理各种语言中的JSON。因为它很容易解析,所以几乎比XML更好地支持它! 客户端 -您将遇到的第一个问题是,没有人知道如何编写Javascript。尤其是那些自认为如此的人。如果你有关于Javascript的书,现在就把它们扔出窗外。几乎没有关于这门语言的好书,因为它们都遵循相同的“黑客”模式,而没有真正深入研究它们在做什么。 从最底层来看,您的团队将需要Javascript开发方面的补救培训。从 Javascript Client Guide . 这是最重要的 事实上 语言信息的来源。下一站是 Douglas Crockford's videos 在Javascript上。我不同意他所说的每一句话,但他是为数不多的语言专家之一。 一旦你了解了这一点,就考虑你想使用什么框架,如果有的话。一般来说,我不喜欢原型和Mootools之类的东西。他们倾向于把一个简单的问题搞得更糟。尽管如此,您可以自由地评估这些工具,并决定它们是否适合您。 如果你觉得你的团队太缺乏经验,没有一个框架就无法生存,那么 GWT 可能符合要求。GWT允许您用Java代码快速编写DHTMLWeb应用程序,然后将它们编译成Javascript。问题是这样做会放弃大量的灵活性。Javascript语言比GWT公开的功能强大得多。然而,GWT确实让Java开发人员能够更快地跟上进度。所以选择你的战斗。
有问题吗? 编辑1: 我忘了补充说你们的团队应该研究 W3C specs 要考虑的另一个关键问题是如何记录您新奇的新Ajax应用程序。REST风格的界面很适合在Wiki中记录。我所做的是创建一个顶级页面,列出每个服务和描述。通过单击服务路径,您将看到一个包含每个子路径详细信息的文档。从理论上讲,这个方案可以记录到树所需要的深度。
DHTML代码在其文档中更为经典。你可以使用像这样的工具 JSDoc
|
![]() |
2
2
查看 Stripes Framework . 如果您熟悉struts,那么条纹对您来说是有意义的,但它要好得多。他们有一个 Stripes vs Struts 在他们的网站上。你可以检查一下,看看你是否感兴趣。它允许您使用任何您想要的ajax框架,我认为从struts迁移到stripes不需要很长时间。 |