为jQuery选择哪个Java Web框架?


问题内容

我正在寻找一个Java Web框架,该框架可让我充分使用jQuery,例如.NET平台上的ASP.NET MVC。

有什么建议吗?


问题答案:

如果您想用Java的jQuery着迷,那就去寻找基于请求/动作的MVC框架,例如Struts
1.x
Spring
MVC
StripesPlay等等。其中,Spring
MVC是最合适的。

基于组件的MVC框架(如JSFStruts
2.x
WicketEchoGWT等)允许对输出进行较细粒度的控制。您必须执行一些特定的技巧/变通办法,以使jQuery与服务器端的组件树无缝通信。例如,仅启用一个禁用的HTML复选框$('#elementid').attr('disabled', false)是不够的。您还必须以某种方式通知服务器端视图状态的更改,否则它仍然认为它已被禁用,因此不会应用/处理任何已提交的请求参数。

在其中的某些组件中,特别是JSF组件库(如PrimeFacesRichFaces),jQuery(UI)被集成为外观的一部分和/或用于“
Ajax的工作”。在PrimeFaces中,例如jQuery
UI手风琴
实现为<p:accordionPanel>。在RichFaces中,甚至还有一个特殊的组件来触发jQuery函数并保持服务器状态更新<rich:jQuery>

总而言之,如果您想要完全的jQuery自由,那么基于请求/操作的MVC框架是最佳选择。如果您不一定需要100%的客户端自由度,那么基于组件的MVC框架提供了集成了jQuery的库是一个足够的选择。