您可以推荐哪种 Ajax 框架/工具包来构建使用 struts 的 Web 应用程序的 GUI?
5 回答
已经提到过,但我再说一遍:jQuery。jQuery 的强大之处不仅在于能够进行简单的 AJAX 调用或出色的 UI 扩展库。在我看来,jQuery 最好的部分是如何轻松处理返回数据。jQuery 允许您像浏览 HTML 一样轻松浏览 XML。
例如,假设您返回一个 xml 请求:
(:从 MarkLogic 培训文件中借用了这个 XML 文档:)
<author name="Boynton">
<book>
<title>Barnyard Dance!</title>
<year>1993</year>
</book>
<book>
<title>Hippos Go Berserk!</title>
<year>1996</year>
</book>
</author>
jQuery 可以使用这个简单的命令检索所有年份元素:
var years = $("year");
//Ok, lets act on each element instead
$("year").each(function(index, value){
alert("Element " + index + " = " + value);
});
/* OUTPUT
Element 0 = 1993
Element 1 = 1996
/*
尝试在普通的 Javascript 中执行此操作!
此外,jQuery 的设计方式非常漂亮。创始人鼓励通过在库的核心中添加创建扩展的能力来扩展框架(确保您始终可以只编辑 Javascript 文件,但是当框架发生关键更新时会发生什么)。
使用 jQuery 的另一个重要原因是它与其他 Javascript 框架的兼容性。默认情况下,Prototype 和 jQuery 都使用“$”符号来引用主库对象。只有 jQuery 添加了删除此引用的功能,因此它可以与 Prototype 共存。
jQuery 让 JavaScript 变得有趣。
我会选择 ExtJS ( http://extjs.com/ )。它有一个非常好的组件和事件模型以及非常好的支持。这是最好的 AJAX ;)
您可以使用带有 JSON 响应的操作向 Ext 前端提供数据。您甚至不需要将客户端前端与服务器前端混合(通过 JSPX / 标签)。
有些人认为您必须开发与服务器前端分开的客户端前端作为 Ext 的一个缺点。我认为不是,因为我已经将使用 Ext 构建的 Web 应用程序从 java 后端切换到 .Net 后端,而无需更改一行客户端前端代码,无论是 HTML 还是 Javascript。
在您决定之前,请先查看 Ext 示例和文档。
Struts 已经随Dojo框架一起提供。您可以将应用程序主题设置为 ajax,然后就可以使用它了。
看看 struts.properties 文件中的 struts.ui.theme 属性!
JavaWorld 上的一篇好文章供您阅读