Spring MVC 3 有视图组件吗?

Posted

技术标签:

【中文标题】Spring MVC 3 有视图组件吗?【英文标题】:Does Spring MVC 3 have view components? 【发布时间】:2011-07-27 20:15:42 【问题描述】:

我正在为一个项目学习 Spring 3 MVC,我将很快开始为一个客户服务,但我找不到它是否支持视图组件(类似于 portlet)。

理想情况下,解决方案类似于 Rails,其中使用参数(对象或视图名称)调用“渲染”来渲染组件。

或者在视图模板中有如下内容

<component name="search" paramA="1" paramB="2"/>

在这种情况下,有一些东西会在类路径中搜索组件“搜索”并使用参数对其进行初始化。

理想的解决方案应该是 0 配置。也许解决方案是编写一个自定义标记库来为我做这件事,但我想知道那里是否已经完成了一些事情。

如果有人知道从 Rails 开发人员的角度解释 spring mvc 3 的书/教程,我将非常感激。

【问题讨论】:

【参考方案1】:

Spring MVC 不是一个组件框架——它的级别太低了。

Java 世界充斥着更多的基于 Web 的组件框架,你无法动摇小部件。尝试(不分先后)JSF、Spring WebFlow、PlayFramework、Vaadin 等。

如果您已经熟悉 Rails,那么显而易见的选择是 Grails - 它受到 Rails 方法的启发,使用 Groovy 而不是 Java,但在 Java VM 上运行,并且可以很好地与其他 Java 东西集成。

【讨论】:

感谢关于Spring Web Flow的建议,我没有检查它,因为我认为它更像是一个构建“向导”而不是组件的工具。不幸的是,该客户在 Spring 技术上投入了大量资金,他们更喜欢使用 Spring Something 构建应用程序。玩这个项目会很棒,因为应用程序也必须是安静的:( @Augusto:Grails 由 SpringSource (grails.org) 拥有和维护。没有比这更正式的 Spring 了 :) 如果你想要 REST,那么 Spring MVC 是你最好的选择。这将很好地与 Grails 或 WebFlow 并列。

以上是关于Spring MVC 3 有视图组件吗?的主要内容,如果未能解决你的问题,请参考以下文章

spring mvc中的多个视图解析器

Spring MVC可重用视图组件[重复]

使用JSF作为Spring MVC的视图技术

spring MVC 和mybatis面试题

Spring MVC各组件近距离接触--下--04

Spring MVC学习—ViewSolvsolver视图解析器的详细介绍与使用案例