spring mvc框架结构浅析(二)

接着上一篇,我们继续:

xxx_servlet.xml就如同struts的配置文件struts-config.xml

4.xxx-servlet.xml配置文件:

	<!-- ②:启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->
	<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />

	<!--  ③:对模型视图名称的解析,即在模型视图名称添加前后缀-->
	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/jsp/" p:suffix=".jsp" />
	 
	<!-- ①:对web包中的所有类进行扫描,以完成Bean创建和自动依赖注入的功能 -->
	<context:component-scan base-package="com.**.action" />

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
		<property name="maxUploadSize"><value>30000000000</value></property>
	</bean>

这里就是action-servlet.xml了,xxx必须与web.xml中配置的 Dispatcherservlet的名称一致,他存在的目的是给spring mvc框架提供在处理web请求过程中所需要的各个组件,包括Handlemapping定义、Controller定义、viewResolver定义 等等。

我们来简单说一下这个配置文件:首先配置了AnnotationMethodHandlerAdapter用来启动spring mvc的注解功能,完成handlemapping的注册,来匹配具体的controller等等。

然 后,注册InternalResourceViewResolver,目的是使用那种视图技术来输出controller返回的页面,这里说一下 Controller,org.springframework.web.servlet.Controller的具体处理类处理完毕web请求后,就会 返回一个org.springframework.web.servlet.ModelAndView实例给dispatcherservlet(我们的 action),ModelAndView实例包含两部分:视图名称,这里是transList;模型数据,即后台查询出的数据。现在就该 InternalResourceViewResolver出场了,他决定使用那种视图技术来渲染显示页面,如jsp、Freemaker等等。这里我们 是jsp页面,即:transList.jsp。这里就更体现出spring mvc三层架构清晰的画面了。

<context:component-scan base-package="com.**.action" />

这句是对web包中的所有类进行扫描,以完成Bean创建和自动依赖注入的功能,spring2.5之后支持,之前本人日志有有关注解这方面的东西,如:@Autowired/@Component等等。

最后一句是注入multipartResolver,他主要是spring mvc用来处理文件上传的,大家可以使用他更简单的搞定文件上传的一些工作。建议参考spring mvc org.springframework.web.multipart部分。

大家可以多去看看这些这些东西的底层实现和详细解释,这里仅供初学者入门

下一篇我们继续说:spring的配置文件applicationContext.xml文件... ...

猜你喜欢

转载自houpengwdf.iteye.com/blog/1226529