介绍
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring框架提供构建Web应用程序的全部MVC模块。使用Spring可插入MVC架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架,如Strust1(现在一般不用),Strust2(一般老项目使用)等等
M:model 模型层 DAO封装 >>>Mybatis
V: view 视图层 html css js jsp
C:controller 控制层 Servlet封装 >>>springMVC
SpringMVC的优点
SpringMVC通过一套注解,可以让普通的java类成为Controller控制器,无需集成Servlet,实现了控制层和Servlet之间的解耦
SpringMVC支持Rest风格的URL写法
SpringMVC采用松耦合,比其他框架更具有扩展性和灵活性
SpringMVC搭建WEB项目
1、点击【file】->【new】选择【Empty Project】输入项目名,点击【finish】创建一个空项目
![](https://i-blog.csdnimg.cn/blog_migrate/ecf1264822db6273ce5795732dc532c8.png)
![](https://i-blog.csdnimg.cn/blog_migrate/98f92bb42826b32f4b11a783530ffa35.png)
2、点击【finish】后不显示项目名,再点击【file】->【close project】后重新打开项目,就会显示项目名
设置maven配置,lombok,点击【file】->【settings】选择Compiler->Annotation processor 勾选Enable annotation processing 后支持lombok
![](https://i-blog.csdnimg.cn/blog_migrate/2d54fc4811e605f43ce6b8f4a815261a.png)
创建 maven web moudle 模块
选中空项目名,鼠标右键,点击【new】->【moudle】选择maven 勾选Create from archetype选择下面红框框出的部分,点击next,填写moudle名和groupId,点击finish在点击maven的inport changes
![](https://i-blog.csdnimg.cn/blog_migrate/111332e84363dc4fed6a3b2ab8d8615d.png)
创建后的目录结构如下图所示
![](https://i-blog.csdnimg.cn/blog_migrate/de192239f17e77a4553f5ed5d10a4ce7.png)
创建好springmvc项目后目录是不齐全的,要手动创建目录,在src目录下创建test文件夹,在test文件夹下创建java文件夹,在src/main目录下创建java文件夹河resource文件夹,创建后的目录如下图所示
![](https://i-blog.csdnimg.cn/blog_migrate/7c42d9c61c828368481be48191560e63.png)
由于web.xml的版本太低,需要修改为下图这样的
![](https://i-blog.csdnimg.cn/blog_migrate/5335dd1132f4835a7e5c926678e1b9a7.png)
准备Servlet跳转到index.jsp 添加tomcat和servlet、jsp的配置文件
![](https://i-blog.csdnimg.cn/blog_migrate/76145ad8153d76f8681cb578d8808de5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6a40cf292764e5da74a73c175f942f70.png)
在web.xml中配置 servlet和setvlet-mapping
![](https://i-blog.csdnimg.cn/blog_migrate/80b9857abc239dcfbe9277ec4f95d6ce.png)
在resource目录下创建speingmvc.xml配置文件,配置包扫描、开启mvc注解驱动、视图解析器
![](https://i-blog.csdnimg.cn/blog_migrate/d33ef3d28aa722008a3676834ceb2134.png)
在resource目录下创建log4j2.xml配置文件,配置日志输出级别
![](https://i-blog.csdnimg.cn/blog_migrate/f4f7707bcec1a502a1d79ace9964fccf.png)
创建controller层
![](https://i-blog.csdnimg.cn/blog_migrate/2bca50e543eb9815681224edaba39df3.png)
springMVC三大组件
处理器映射器,处理器适配器,视图解析器