需要帮助选择Ajax框架

时间:2012-04-24 17:18:49

标签: ajax spring hibernate

我的项目的域名是eTendering。我们计划在体系结构和演示文稿Spring MVC中使用Spring和Hibernate,但我们希望看起来像.Net的Silverlight或adobe的Flex,我们正在计划Ajax框架。那么SpringMVC会值得吗?我见过wicket和openxava,但我仍然感到困惑,所以请根据我的域名的复杂性建议正确的选项。

1 个答案:

答案 0 :(得分:1)

取决于您的需求:

  • Spring MVC - 这个选项将让你自己编写AJAX(例如通过JQuery)和HTML等等。这可能很乏味,但你控制着一切。这也取决于你得到的HTML的质量以及SEO的索引质量。
  • JSF - 此选项为您提供了许多组件,允许您创建基于AJAX的表单并将其处理为开箱即用。但是在编写自定义组件时,只需单独编写JS / JQuery就不那么容易了。此外,它不会生成那种质量不高的漂亮HTML,而且您可能不会被SEO索引。
  • GWT - 这个选择意味着你不编写JS,而是用Java编写逻辑然后转换为JS。一方面,它将为您提供漂亮的基于AJAX的应用程序,您不需要编写JS,另一方面它是a)编写非常好看的应用程序UI非常复杂b)它将添加另一个步骤你的开发周期(生成JS时需要很长时间)c)它几乎不允许你的页面被编入索引。此外,如果涉及SmartGWT等衍生产品,它们会提供大量看起来很酷的组件,但它们总是需要资金来支持。
  • Vaadin - 这是基于AJAX的框架,它部分地为JS生成Java,但它也发送请求到服务器进行逻辑执行(当然在GWT中也会发生这种情况,但不常见,GWT尝试在客户端上执行逻辑) 。将源代码编译到JS需要的时间更少,并且几乎不可能将页面编入索引。
  • ZK - 另一个基于AJAX的框架。与允许您只使用一种模式的其他框架不同,它可以在MVC,MVP,MVVM模式下工作。它没有将Java源代码编译到JS,因此所有请求都发送到服务器(我听说内部公司的基准测试表明它实际上比GWT更快,但我认为这取决于你的处理逻辑)。搜索引擎优化根本不会与ZK一起使用,但是可以将ZK组件包含在JSP页面中(虽然这个功能不是免费的),因此可以杀死两只鸟。用ZK编写自己的组件并不是一件容易的事,但它有各种各样的即用型组件。

所以你应该考虑几件事:搜索引擎优化,你可以为框架提供的资金,你需要多少AJAX,你想要自己编写,等等。 还要注意我提到的那些模式:例如MVP适用于复杂的接口,并由GWT,Vaadin,ZK支持。 MVVM因其绑定而非常酷,并且得到了JSF和ZK的支持。