图解 SpringMVC 五大组件
点击关注公众号,实用技术文章及时了解
来源:blog.csdn.net/wsdfym/article/details/91354997
是一个MVC架构,用来简化基于MVC架构的Web应用开发。SpringMVC最重要的就是五大组件
DispatcherServlet
HandleMapping
Controller
ModeAndView
ViewResolver
下面一一介绍这五大控件
1.DispatcherServlet
这个控件是SpringMVC 最核心的一个控件,顾名思义其实他就是一个Servlet,是Spring写好的一个Servlet
2.HandleMapping
控件标明了路径与Controller的对应关系,不同的路径访问不同的Controller
3. Controller
用来处理业务逻辑的Java类
4. ModeAndView
Mode用来绑定处理后所得的数据,View视图名
5. ViewResolver
视图解析器明确了视图名与视图对象的关系,是调用demo.jsp还是调用demo.html,以及明确视图的位置
五大组件的关系
五大组件的位置关系
DispatcherServlet属于servlet所以位于Tomcat等服务器容器中,而、HandleMapping ViewResolver 属于Spring所以位于SpringMVC配置文件中,Contrlloer以及ModeView位于src文件中处理具体逻辑业务
下面说说五大组件的使用以及配置
配置DispatcherServlet
DispatcherServlet属于Servlet所以配置在web.xml文件中。init-param为该Servlet启动所需参数。DispatcherServlet会读取初始化contextConfigLocation参数里面的值从而获取spring的配置位置,然后自启动容器
<!-- 配置前端控制器,配置Servlet -->
<servlet><servlet-name>springMvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc.xml</param-value></init-param><load-on-startup>1</load-on-startup>
</servlet>
<!--配置请求路径-->
<servlet-mapping><servlet-name>springMvc</servlet-name><url-pattern>*.form</url-pattern>
</servlet-mapping>
2. HandleMapping
mvc:annotation-driven 配置mvc注解扫描 可以用注解@RequestMapping(“url”)加在方法上简化配置prop标明路径和XXController的关系
<!--开启mvc注解扫描-->
<mvc:annotation-driven/>
<!--创建Controller bean-->
<bean id="loginController" class="包名+类名"/><bean class="org.springframework.web.servlrt.handler.SimpleUrlHandlerMapping"><property name="mappings"><props><prop key="/login.form">loginController</prop></props></property>
</bean>
3.Controller
处理getData.form该路径的业务逻辑
@Controller
public class DataController {@RequestMapping("getData.form")public ModeAndView hello(String stationId) {System.out.println("hello");return new ModeAndView("hello")}
}
4. ModeAndView
两种ModeAndView的构造方法,第一个视图名,第二个需要绑定的数据
ModeAndView(String viewName)
ModeAndView(String viewName ,Map data)
5. ViewResolver
前缀+视图名+后缀=映射到页面
<!-- 配置视图解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResour ceViewResolver"><property name="prefix" value="/WEB-INF/"/><property name="suffix" value=".html"></property>
</bean>
SpringMVC的部分知识图:
推荐
主流Java进阶技术(学习资料分享)
Java面试题宝典
加入Spring技术开发社区
PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。点“在看”支持我们吧!
图解 SpringMVC 五大组件相关推荐
- Spring MVC 五大组件
欢迎关注方志朋的博客,回复"666"获面试宝典 是一个MVC架构,用来简化基于MVC架构的Web应用开发.SpringMVC最重要的就是五大组件 1. DispatcherServ ...
- 低代码缺少的五大组件
[CSDN 编者按]前段时间有个很有趣的话题,说程序员太难了,前有 AI 自动编程掀餐桌,后有 6 岁小孩抢饭碗.低代码让没有任何技术背景的普通人也能参与到编程中来,这无疑是对程序员行业的一个冲击!但 ...
- SpringCloud之五大组件
一.SpringCloud微服务架构 1.流程:客户端请求→Zuul→Eureka 获取服务→Feign 通信→Ribbon 负载均衡→Hystrix 熔断. 2.五大组件 1)Eureka:服务 ...
- CV:传统视觉知识—机器视觉系统的基础知识(机器视觉三要素+典型的工业机器视觉系统五大组件)
CV:传统视觉知识-机器视觉系统的基础知识(机器视觉三要素+典型的工业机器视觉系统五大组件) 目录 机器视觉三要素 1.what-测量.判断 2.why-灵活性.自动化
- 聊一聊SpringCloudNetflix的五大组件(神兽)
SpringCloud开发五大组件 服务发现--Netflix Eureka 客服端负载均衡--Netflix Ribbon 断路器--Netflix Hystrix 服务网关--Netflix Zu ...
- SpringCloud分布式开发五大组件详解
SpringCloud分布式开发五大组件详解 https://blog.csdn.net/weixin_40910372/article/details/89466955 服务发现--Netflix ...
- 学习 SpringCloud 五大组件后的总结 一
学习 SpringCloud 五大组件后的总结 一 1.什么是微服务? 把某一功能独立出来单独作为一个进程类似的微小的服务.独立做某件事,与其他的服务直接不影响. 微服务之间的优缺点? 优点:每个服务 ...
- Spring Cloud 五大组件
Spring Cloud 五大组件 1. 简介 2. Eureka 3. Ribbon 4. Feign 5. Zuul 6. Hystrix 1. 简介 Spring Cloud全家桶是Pivota ...
- springcloud简介与五大组件及相关配置
一.spring cloud版本对应 SpringCloud版本 SPringBoot版本 2021.0.x aka Jubilee 2.6.x 2020.0.x aka Ilford 2.4.x, ...
最新文章
- 听说做前后端的都是这个体会? | 每日趣闻
- 面试官:说说一条查询SQL的执行过程?
- java数据库视频教程下载,【No147】最新oracle11g DBA 开发和应用数据库视频教程下载...
- partition oracle用法,Oracle partition by 使用说明
- 飞鸽传书为什么传书?
- 系统协调服务器,协调网络系统 Collaboration network system
- 一步一步写算法(之哈希二叉树)
- python append函数_Python程序性能分析
- 杂谈异常处理try-catch-finally
- MFC连接MySQL数据库实例
- linux打开文件程序,linux – 获取打开特定文件的应用程序列表
- TeamViewer 如何注册账户?
- 小新pro16独显版安装NVIDIA驱动
- 网络模型(ISO,TCP/IP)
- android h5富文本编辑器,H5富文本编辑器的详细介绍
- 水上运动装备的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- 在Java中实现 点击返回按钮返回上一个页面
- 盲信号分离的实际应用
- 数据可视化:世界银行数据(1960-2017)
- 今年嵌入式行业研究生应届生毕业大概薪资多少,大数据告诉你
热门文章
- 小屏旗舰新王者: 三星Galaxy S11e曝光
- 14岁女孩模仿视频中易拉罐做爆米花意外身亡 博主办公室小野回应...
- 探探被安卓市场下架 官方回应:深入开展整改
- 小米9正在争取首月供货超百万台 雷军:请大家帮我一起催货
- 为2440搭建NFS开发环境【ZT】
- 饭后什么事情正谋杀你的健康
- vscode如何添加头部注释、作者注释
- 路强 java 百度云,解决 Tried to download(403): 。。。zopfli-v2.0.2
- 被尘封的故事技能点bug_王者荣耀体验服更新,多名英雄技能优化,瑶妹玩家却坐不住了...
- php中调用go代码,php中的goto的用法实例(代码)