我首先要澄清的是,在堆栈溢出和其他论坛中有很多关于此的讨论。我已经阅读了这些并理解了<mvc:annotation-driven />
背后的一些概念。但是我阅读的越多,我就越困惑。在一些回复中,我读过<mvc:annotation-driven />
为@ResponseBody
提供了支持。但由于我是初学者,我已经安装了sping-mvc-showcase应用程序,并发现在不使用<mvc:annotation-driven />
的情况下广泛使用了这个注释。你能不能请教我这个?
答案 0 :(得分:0)
如果您正在使用Spring MVC的xml配置,那么就是如何设置对使用MVC注释(以及其他一些东西)的支持。使用较新版本的Spring MVC,您可以使用纯Java配置应用程序,并且可以通过向配置类添加注释@EnableWebMVC
来实现相同的目的。
@Configuration
@EnableWebMVC
public class MyConfig {
// rest of config
}
答案 1 :(得分:0)
Spring MVC或者就此而言,Spring的任何实现都可以通过两种方式配置Xml或Java-Based。简单地在Xml配置文件中使用<mvc:annotation-driven>
标记意味着您要向Spring指定您将使用Spring注释,Spring必须在基于Java的程序中查找,例如 -
@Controller
public class index() {
...
}
当您的应用程序初始化时,将在Spring的Container中注册为Controller,Spring将扫描您在配置中指定的基础包。 还有注释,如
“@ EnableWebMvc”
简单地启用可以使用的各种类,这些类非常有用,专门用于帮助使用Spring开发MVC Web应用程序。
答案 2 :(得分:0)
不仅可以让您使用MVC相关的注释。 查看the schema将显示您可以配置HttpMessageConverters,HandlerMethodArgumentResolvers,HandlerMethodReturnValueHandlers,异步请求处理选项,FormattingConversionServices,JSR-303 Validator,ContentNegotiationManager, MessageCodesResolver等等。
如果你自己没有配置任何一个,它将为你提供默认值。
它只影响Servlet MVC。