博客
关于我
SpringMVC初认识
阅读量:271 次
发布时间:2019-03-01

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

SpringMVC初认识

1.什么是MVC

​ a.MVC是模型(Model)、视图(View )、控制器(Controller)的简写,是一种软件设计规范。

​ b.是将业务逻辑、数据、显示分离的方法来组织代码

​ c.MVC主要作用是降低了视图与业务逻辑间的双向耦合

​ d.MVC不仅仅是一种设计模式,更是一种架构模式

2.第一个SpringMVC程序

​ a.新建一个Moudle,添加web支持

​ b.写一个视图 test.jsp 显示数据${msg}

​ c.确定导入了SpringMVC的依赖,以及在lib文件夹中的依赖

​ d.在web.xml中配置DispatcherServlet:这个是SpringMVC的核心:请求分发器,前端控制器

​ e.编写SpringMVC的配置文件:springmvc-servlet.xml (名称按照官方规定)

​ f.在配置文件中 添加处理器映射器、处理器适配器和视图解析器(SpringMVC核心三要素)

​ g.Controller层实现业务代码和视图跳转

2.1 SpringMVC的优点

  • 可以支持各种视图技术,而不仅仅局限于JSP;

  • 与Spring框架集成(如IoC容器、AOP等);

  • 清晰的角色分配:前端控制器(dispatcherServlet) , 请求到处理器映射(handlerMapping), 处理器适配器(HandlerAdapter), 视图解析器(ViewResolver)。

  • 支持各种请求资源的映射策略。

3.SpringMVC执行流程

​ a.DispatcherServlet表示前置控制器,是整个SpringMVC的控制中心,接受用户发出的请求并拦截

​ 假设请求的url为:http://localhost://8080/SpringMVC/hello

​ 其中:http://localhost:8080 为服务器域名

​ SpringMVC为部署在服务器上的web站点

​ hello表示控制器

​ 如上的url表示请求位于服务器localhost:8080上的SpringMVC站点的hello控制器

​ b.HandlerMapping表示处理器映射,DispatcherServlet自己调用

​ HandlerMapping根据请求url去寻找Handler

​ c.HandlerExecution表示具体的Handler,其主要作用是根据url寻找具体的控制器,在上面的例子中控制器是hello,

​ d.HandlerExecution将解析后的信息返回给DispatcherServlet

​ e.HandlerAdapter表示处理器适配器,其按照特定规则去执行Handler(就是去寻找Controller)

​ f.Controller将具体的执行信息返回给HandlerAdapter,比如:ModelAndView

​ g.DispatcharServlet调用视图解析器(ViewResolver)解析HandlerAdapter传递的逻辑视图名

​ h.DispatcharServlet根据视图解析器解析的视图结果,调用具体视图

​ i.最终视图呈现给用户

转载地址:http://fyox.baihongyu.com/

你可能感兴趣的文章
Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
查看>>
mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
查看>>
mysqldump 参数--lock-tables浅析
查看>>
mysqldump 导出中文乱码
查看>>
mysqldump 导出数据库中每张表的前n条
查看>>
mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
查看>>
Mysqldump参数大全(参数来源于mysql5.5.19源码)
查看>>
mysqldump备份时忽略某些表
查看>>
mysqldump实现数据备份及灾难恢复
查看>>
mysqldump数据库备份无法进行操作只能查询 --single-transaction
查看>>
mysqldump的一些用法
查看>>
mysqli
查看>>
MySQLIntegrityConstraintViolationException异常处理
查看>>
mysqlreport分析工具详解
查看>>
MySQLSyntaxErrorException: Unknown error 1146和SQLSyntaxErrorException: Unknown error 1146
查看>>
Mysql_Postgresql中_geometry数据操作_st_astext_GeomFromEWKT函数_在java中转换geometry的16进制数据---PostgreSQL工作笔记007
查看>>
mysql_real_connect 参数注意
查看>>
mysql_secure_installation初始化数据库报Access denied
查看>>
MySQL_西安11月销售昨日未上架的产品_20161212
查看>>
Mysql——深入浅出InnoDB底层原理
查看>>