我们已经了解了Spring MVC的工作机制,以及核心dispatcherServlet的工作流程,接下来就可以配置一个Spring MVC了。首先小博老师给大家介绍下Spring MVC的基本配置文件的部分核心配置内容。
<beans ……> <!-- 自动扫描的包名 --> <context:component-scan base-package="com.app,com.core,JUnit4" ></context:component-scan> <!-- 默认的注解映射的支持 --> <mvc:annotation-driven /> <!-- 视图解释类 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp"/><!--可为空,方便实现自已的依据扩展名来选择视图解释类的逻辑 --> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /> </bean> |
<context:component-scan/> 扫描指定的包中的类上的注解
<mvc:annotation-driven /> 会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter,这 两个bean是spring MVC处理@Controllers分发请求必须定义的。
InternalResourceViewResolver 的bean定义,是指定使用使用InternalResourceViewResolver视图解析器进行视图的解析。这里的property的name很关键:
viewClass指定了选择何种视图技术,这里使用JSTL技术;
prefix是视图文件的前缀,即所在目录地址。如果把视图(如jsp)文件都放在/WebRoot/之下,所以只需要配置一个“/”;如果放在目录/WebRoot/目录下的view目录中,这里prefix的值应该为/view/。也就是告诉bean,到哪里去查找视图文件。
suffix是视图文件的后缀,即扩展名,如可以定义为“.jsp”,也可以定义为“.html”。