SSM之SpringMVC框架
SpringMVC的简介
springmvc是一个基于Java实现的 WEB MVC设计模式的请求驱动的轻量级的WEB框架。
- 使用了MVC设计模式
- 基于请求驱动:使用的是 请求-响应模式
- 对WEB层进行解耦,达到简化web开发的效果
特点:
- springmvc是spring框架的一部分,可以使用spring的功能
- 提供了一个前端控制器DispatcherServlet,开发者无需自己再开发一个控制器
- 可以支持数据绑定,并且能够正确的进行数据类型的转换
- 灵活性高,易于与其他框架整合
SpringMVC的工作流程
1.Brower浏览器 发出请求到 前端控制器
前端控制器 DispatcherServlet,称为中央控制器。
作用:负责处理请求响应,通过调用其他组件完成
2.前端控制器把请求 转发给 映射器
处理器映射器 HandlerMapping
功能:根据请求url去查找处理器或者是拦截器
3.映射器将查找结果返回给前端控制器
4.前端控制器调用适配器
处理器适配器 HandlerAdapter
功能:适配执行不同的处理器,数据格式转换、数据绑定等
5.处理器适配器 执行处理器
处理器 Handler 自己开发的controller
6.处理器 返回 ModelAndView到处理器适配器
7.处理器适配器将ModelAndView返回到前端控制器
8.前端控制器将ModelAndView转给视图解析器
视图解析器 ViewResolver 作用:把视图信息解析为真正的视图
9.视图解析器将视图信息返回到前端控制器
10.前端控制器进行数据渲染,把model数据渲染到View视图上
11.前端控制器将信息响应给浏览器
具体流程图如下:
springMVC入门程序
1.新建web项目,导入jar包
2.配置前端控制器 web.xml
<!-- 前端控制器 --><servlet><servlet-name>DispatcherServlet</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>DispatcherServlet</servlet-name><url-pattern>*.do</url-pattern><!-- *.do :以 .do结尾的请求都进行处理/ :处理所有的请求,包括静态资源也会被拦截--></servlet-mapping>
3.配置springmvc.xml
<!-- 处理器映射器 作用:请求url查询处理器BeanNameUrlHandlerMapping:根据bean的名字与url进行匹配localhost:8080/springmvc01/first.do--><bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean><!-- 处理器适配器 作用:适配不同类型的处理器并且执行SimpleControllerHandlerAdapter:适配执行,实现了Controller接口的处理器--><bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"></bean><!-- 处理器bean --><bean id="fc" class="com.cbb.controller.FirstController" name="/first.do"></bean><!-- 视图解析器: 作用:解析成真正的视图InternalResourceViewResolver: Jsp视图解析器--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/jsps/"></property><property name="suffix" value=".jsp"></property></bean>
4.开发一个处理器
public class FirstController implements Controller {@Overridepublic ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {// 新建一个ModerAndView对象,往里面填充model和view视图信息尽心返回ModelAndView mv = new ModelAndView();mv.addObject("msg","这是第一个");mv.setViewName("user");return mv;}}
5.新建一个jsp来显示信息
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>${msg}</body>
</html>
springmvc注解开发
1.前端控制器 web.xml如上
2.配置springmvc.xml
<context:component-scan base-package="com/cbb.controller"></context:component-scan><!-- 注解开发 --><!-- 支持注解的处理器、映射器支持的注解为@RequestMapping--><bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean><!-- 支持注解的 处理器适配器 --><bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/jsps/"></property><property name="suffix" value=".jsp"></property></bean>
3.自己开发的处理器
@Controller
public class FirstController {@RequestMapping(value="/one.do")public ModelAndView one() {ModelAndView mv = new ModelAndView();mv.addObject("msg","这是springmvc注解开发!");mv.setViewName("user");return mv;}
}
4.新建一个jsp来接收信息
SSM之SpringMVC框架相关推荐
- SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)
SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一) 1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee ...
- SpringMvc框架及SSM框架整合
SpringMvc框架及SSM框架整合 一.SpringMvc相关知识 1.Spring和SpringMvc的关系 1.1.Spring是IOC和AOP的容器框架,SpringMVC是基于Spri ...
- Java语言开发在线音乐推荐网 音乐推荐系统 网易云音乐爬虫 基于用户、物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)框架 大数据、人工智能、机器学习项目开发
Java语言开发在线音乐推荐网 音乐推荐系统 网易云音乐爬虫 基于用户.物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)框架 大数据.人工智能.机器学习项目开发Mus ...
- Java语言开发在线美食推荐网 美食推荐系统 基于用户、物品的协同过滤推荐算法实现 SSM(Spring+SpringMVC+Mybatis框架 人工智能、大数据、机器学习项目开发
Java语言开发在线美食推荐网 美食推荐系统 基于用户.物品的协同过滤推荐算法实现 SSM(Spring+SpringMVC+Mybatis框架 人工智能.大数据.机器学习项目开发FoodRecomm ...
- SpringMVC框架--学习笔记(下)
接上篇:SpirngMVC框架--学习笔记(上):https://blog.csdn.net/a745233700/article/details/81038382 17.全局异常处理: 系统中异常包 ...
- SpringMVC框架--学习笔记(上)
1.SpringMVC入门程序: (1)导入jar包:spring核心jar包.spring-webmvc整合Jar包 (2)配置前端控制器:web.xml文件中 <?xml version=& ...
- SpringMVC框架第三天
SpringMVC第三天 ##SpringMVC大纲 第1章:搭建整合环境 ####1.1 搭建整合环境 整合说明:SSM整合可以使用多种方式,咱们会选择XML + 注解的方式 整合的思路 先搭建整合 ...
- ❤️六万字《SpringMVC框架介绍—从入门到高级》(建议收藏)❤️
<SpringMVC框架介绍>(建议收藏) ❤️希望博友给个三连+关注!!! SSM: mybatis + Spring + SpringMVC MVC三层架构 SpringMVC + V ...
- Java语言开发在线购物推荐网 购物商城推荐系统 基于用户、物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)开发框架 大数据、人工智能、机器学习项目开发
Java语言开发在线购物推荐网 购物商城推荐系统 基于用户.物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)开发框架 大数据.人工智能.机器学习项目开发ShopRec ...
最新文章
- FPGA之道(9)BLOCK RAM以及DSP硬核
- java sql函数_Java调用Sql存储过程实例讲解
- 信息系统项目管理师-案例分析专题(一)案例简介、答题方法、要点笔记
- C/C++ Development Library
- mysql 不能添加外键 1215_MySQL错误1215:无法添加外键约束
- 算法的力量万变不离其宗 -- 李开复
- java数据结构图_java总结数据结构和算法
- Bailian4123 马走日【DFS】
- 算法-获取质数(素数)数组
- pe系统如何读取手机_在酷安你甚至可以学到如何用手机充当启动盘进PE(多图警告)...
- 深入理解jvm虚拟机一
- 在线XML转JSON工具
- Mono.Cecil
- MVC view页面需要多个model,复杂网页的处理
- 解决网盘下载速度慢的问题
- LAZARUS APT利用恶意word文档攻击MAC用户
- jsp中获取不到servlet中的ArrayList
- PHP+MYSQL实现个人博客网站,PHP动态网页设计
- 串口调试助手中设置快捷键
- F28335舵机控制器(4)——第三版PCB配套程序
热门文章
- Android NotificationManager详解
- python零基础自学教材-python萌新:从零基础入门到放弃
- python入门经典100题-零基础学习Python开发练习100题实例(1)
- 学python有前途吗-现在学Python还有前途吗?能做什么?
- 【当贝市场】智能电视语音识别功能泄露隐私?
- Position属性四个值:static、fixed、absolute和relative的区别和用法
- c语言中eles后面分号的作用,C语言 if else 语句详细讲解
- 万能倍投计算器工具_一周总结上证A股市盈率14.83倍,这是机会还是风险呢?
- 无限极分类php简单,创建无限极分类树型结构的简单方法
- 【动态规划】记录每步选择:牛客网:连续子数组的最大和(二)