Matt Raible 列出了他挑选的 在JVM上部署的顶级Web框架
- GWT-Ext
- Wicket
- Grails
- Flex/OpenLaszlo
- Seam
- Struts 2
我认为这个列表中最有趣的是这些框架彼此之间的差异。几年前,任何顶级Web框架列表都会包括一大堆类似metoo式的动作风格MVC框架,也许还会加入一到两个组件风格的MVC框架。我/可以/总结这个列表,说平衡似乎正在向组件导向的方法倾斜,但我实际上不认为这是真正的新闻。
你看,列出的组件框架之间实际上有着比共同之处更多不同的地方。两个动作风格框架也是如此。
所以真正的新闻是,在过去的几年里,Web框架空间进行了大量的创造性思考(如果我记得正确,这六个框架中的四个在三年前甚至都不存在)。
就记录而言,我相信这些框架中的任何一个都是Web开发的良好基础,并且比几年前人们使用的要好得多。
现在,我真正感兴趣的是接下来会发生什么。某些项目(例如,Seam和Grails)是否决定将精力集中在编排、状态管理、数据访问和集成等问题上,同时支持/多种视图技术/,而将其他项目(例如,Wicket、JSF、GWT和Flex)留给专注于视图?或者每个项目都需要独立发展成为一个完整的解决方案?
显然,Rails的例子表明,单个项目可以提供完整的解决方案,这对许多用户来说很有吸引力。然而,在我看来,这种方法在Java世界中并不那么自然,在Java世界中我们更习惯于选择和异构技术环境,而且我们不太倾向于英雄崇拜。
我们希望采用Seam的策略是支持多种视图技术。我们还没有一个明确的列表,但我正在考虑的包括JSF、GWT、Flex以及可能还有Wicket。但我们并没有自欺欺人地认为这是一项简单的任务。开发并维护Seam为JSF提供的深度集成水平极为昂贵。