各种Java Web表示层技术的优缺点

我目前正在开发一个大量使用JSF和IceFaces的Web应用程序。我们已经讨论了转移到另一个表示层的问题,我认为我将把讨论深入到SO中,然后看看专家们的想法。

我很好奇,是否有人可以权衡各种Java表示层技术的利弊。如果您仅与一个人一起工作,请说出为什么爱它或讨厌它。如果您曾经使用过几种方法,请给他们留下深刻的印象,以了解它们如何相互叠加。

我们正在考虑的技术是:

  • 冰面
  • JSF(无IceFaces)
  • GWT(Google Web工具包)
  • 便门
  • 挂毯

如果我从清单中遗漏了任何信息,请告诉我。

谢谢!

回答:

我的观点非常偏向于Wicket,因为在JSP地雷上跳闸了太多次之后,我已经使用了一段时间。

  • 布局和代码的真正分离。
  • 基于组件,这意味着站点元素的高度可重用性;例如,您可以创建带有自动标签和CSS样式以及所有内容的美化表单,只需在组件的构造函数中更改其DAO对象,即可在另一个项目中完全重用。
  • 对Ajax,Portlet和各种框架等东西的出色支持通常直接可用,更重要的是,除了slf4j / log4j之外,它不依赖任何其他东西,一切都是可选的!

  • 开发对一般情况有些困惑,Wicket泛型现在有点混乱,尽管在1.4中已经对其进行了很多清理
  • 一些组件(如Form.onSubmit())需要大量的子类或匿名方法重写,以便轻松地注入行为。这部分是由于Wicket强大的基于事件的设计所致,但不幸的是,这也意味着使用Wicket容易使代码混乱。

也就是说,我还没有使用过,但这是我的选择和/或所听到的东西)

  • GWT是基于JavaScript的,对我来说听起来很愚蠢。主要问题是,它使我想起了太多的JSP:s及其自动生成的类,这些类太可怕了。
  • Tapestry不能正确地分离标记和代码,而这很容易在两者之间进行验证,这将在将来引起问题。

以上是 各种Java Web表示层技术的优缺点 的全部内容, 来源链接: utcz.com/qa/402222.html

回到顶部