博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Java.Spring.MVC】使用Spring MVC构建Web应用程序
阅读量:4006 次
发布时间:2019-05-24

本文共 1156 字,大约阅读时间需要 3 分钟。

Spring MVC请求的处理过程

请求会由DispatcherServlet分配给控制器(根据处理器映射来确定)。在控制器完成处理后,接着请求会被发送给一个视图(根据视图解析器来确定)来呈现输出结果:

  • (1)第一步是 Spring的DispatcherServlet。Spring MVC的所有请求都会通过一个前端控制器Servlet —— DispatcherServlet;DispatcherServlet的任务是将请求发送给Spring MVC控制器;
  • (2)控制器是一个用于处理请求的Spring组件;DispatcherServlet会查询一个多个处理器映射HandlerMapping来确定请求应该发送给哪个控制器Handler;HandlerMapping根据请求所携带的URL信息来进行决策;
  • (3)选中了控制器Handler之后,DispatcherServlet会将请求发送给选中的Handler;到达了Handler,请求会等待Handler处理请求中的信息(实际上,Handler本身只处理很少的处理工作,而是将业务逻辑委托给一个或多个服务对象);
  • (4)Handler在完成逻辑处理后,会产生一些信息Model,这些信息需要返回给用户并在浏览器上显示;Handler所做的最后一件事是将Modle数据打包,并且标识出用于渲染输出的视图View的名称。并将请求连同Model和View名称发送回DispatcherServlet;
  • (5)传递给DispatcherServlet的View的名称并不直接表示某个特定的JSP;它仅仅传递了一个逻辑的视图名,这个名字将会用来查找产生结果的真正视图。DispatcherServlet将会使用ViewResolver来将逻辑视图名匹配为一个特定的View实现,可能也可能不是JSP;
  • (6)最后是将Model数据交付给View,View使用Model数据渲染输出,并通过这个输出将响应对象传递给客户端;

Spring MVC简介

M - Model map会被自动转换成合适的格式,如JSP中的request attributes, Velocity中的template model

在其他MVC框架中集成Spring

通过配置ContextLoaderListener启动一个Spring root application context, 然后通过ServletContext获取这个spring context:

WebApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(request.getServletContext());

你可能感兴趣的文章
Java RMI之HelloWorld篇
查看>>
Oracle 物化视图
查看>>
利用VMware搭建虚拟开发环境及VMware虚拟机上网
查看>>
spring系列之 回调函数的使用
查看>>
Java中的枚举(一)
查看>>
Java中的枚举(二)
查看>>
request.getInputStream()读取post传递的xml文件问题
查看>>
用Java实现断点续传(HTTP)
查看>>
Oracle树查询及相关函数
查看>>
Struts2中配置Servlet详解
查看>>
weblogic10和hibernate3 冲突解决方案
查看>>
WebLogic部署SSH2项目的小结
查看>>
JS+Struts2多文件上传完整示例
查看>>
Hibernate中DetachedCriteria的使用
查看>>
ORM是什么?
查看>>
关于Hibernate的一些常规问题
查看>>
Oracle中视图的创建和处理方法
查看>>
在Hibernate应用中使用视图
查看>>
MyEclipse 8.6 特性,安装与优化
查看>>
Oracle 查询并删除重复记录的SQL语句
查看>>