2

我首先想澄清一下,在堆栈溢出和其他论坛中有很多关于此的讨论。我已经阅读了这些并理解了背后的一些概念<mvc:annotation-driven />。但我越读越困惑。在我读过<mvc:annotation-driven />的一些回复中,它支持@ResponseBody. 但由于我是初学者,我安装了 sping-mvc-showcase 应用程序,发现此注解大量使用,而没有使用<mvc:annotation-driven />. 你能告诉我吗?

4

3 回答 3

0

如果您使用 Spring MVC 的 xml 配置,这就是您设置对使用 MVC 注释(和其他一些东西)的支持的方式。使用较新版本的 Spring MVC,您可以改为使用纯 Java 配置您的应用程序,您可以通过将注释添加@EnableWebMVC到您的配置类来实现相同的目的。

@Configuration
@EnableWebMVC
public class MyConfig {
    // rest of config
}
于 2013-04-03T17:27:04.133 回答
0

Spring MVC 或 Spring 的任何实现都可以通过两种方式配置 Xml 或基于 Java。简单地<mvc:annotation-driven>在您的 Xml 配置文件中使用标记意味着您正在向 Spring 指定您将使用 Spring 必须在您的基于 Java 的程序中寻找的 Spring 注释,例如可以是任何东西 -

@Controller
public class index() {
 ...
}

当您的应用程序正在初始化并且 Spring 扫描您在配置中指定的基本包时,将在 Spring 的容器中注册为控制器。还有注释,例如

“@EnableWebMvc”

只需启用各种可以使用的类,这些类非常有用并且专门设计用于帮助使用 Spring 开发 MVC Web 应用程序。

于 2013-04-03T20:58:18.053 回答
0

不仅使您能够使用与 MVC 相关的注释。查看架构将显示您可以配置 HttpMessageConverters、HandlerMethodArgumentResolvers、HandlerMethodReturnValueHandlers、异步请求处理选项、FormattingConversionServices、JSR-303 Validator、ContentNegotiationManager、MessageCodesResolver 等。

如果您自己没有配置任何这些,它将为您提供默认值。

它只影响 Servlet MVC。

于 2013-10-17T17:33:07.350 回答