对springMVC的深入认识

1、MVC设计模式(这里讲的是b/s情况下的模式)


2、springMVC框架与spring的关系

springMVC只是spring框架的一个模块;如下图是spring整个框架的内容:


3、springMVC的框架结构原理


1、 用户发起请求,请求到DispatcherServlet前端控制器

DispatcherServlet(中央调度),负责requestresponse,负责调用处理器映射器查找Handler,负责调用处理器适配器执行Handler,有了前端控制器降低了各各组件之间的耦合性,系统扩展性提高。

2、 DispatcherServlet前端控制器请求处理器映射器HandlerMapping查找Handler

根据用户请求的url,根据一定的规则去查找(比如:xml配置,注解)

3、 HandlerMapping处理器映射器将Handler返回给前端控制器

4、 DispatcherServlet前端控制器调用HandlerAdapter处理器适配器执行Handler

程序员编写的Handler是按照适配器要求的规则去执行Handler

 

5、 HandlerAdapter处理器适配器执行Handler

适配器按照一定规则去执行Handler

6、 Handler执行完成,返回ModelAndView

ModelAndViewspringmvc的封装对象,将modelview封装在一起。

7、 HandlerAdapter处理器适配器将ModelAndView返回给前端 控制器

 

8、 前端控制器调用视图解析器,进行视图解析,解析完成给前端控制器返回View

Viewspringmvc的封装对象,是一个接口,实现类包括jspviewpdfview。。。。

9、 前端控制器调用view进行视图渲染

将模型数据填充到view(将model数据填充到request)响应给用户

10、前端控制器响应给用户。

4、这里详细的说明一下springmvc平常要了解的(开发是不常用的,一般都是用注解)三大组件:

1、处理器映射器常用的两个是(在注解开发中就是指的requestMapping注解):


<!-- 处理器映射器 根据url匹配bean的name 处理器映射器实现了HandlerMapping接口 -->
	<bean
		class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />

	<!-- 简单url映射的处理器映射器 -->
	<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
		<property name="mappings">
			<props>
				<prop key="/hello1.action">hello_controller</prop>
				<prop key="/hello2.action">hello_controller</prop>
				<prop key="/hello3.action">hello_controller3</prop>
			</props>
		</property>
	</bean>

对应的controller类的配置:

        <!-- 配置action -->
	<bean id="hello_controller" name="/helloworld.action" class="cn.itcast.springmvc.Hello" />
	
	<!-- 配置action -->
	<bean id="hello_controller3"  class="cn.itcast.springmvc.Hello1" />


根据处理器映射器就可以找到对应的handler(函数)


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值