Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。
1.png
其运行的具体步骤为:
具体步骤:
首先用户发送请求到前端控制器,前端控制器根据请求信息(如 URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;图中的 1、2 步骤;
页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,这个对象在 Spring Web MVC 中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕后返回一个 ModelAndView(模型数据和逻辑视图名);图中的 3、4、5 步骤;
前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并把模型数据传入以便视图渲染;图中的步骤 6、7;
前端控制器再次收回控制权,将响应返回给用户,图中的步骤 8;至此整个结束。
可将开发步骤概括为
- 导入SpringMVC坐标
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.0.RELEASE</version>
</dependency>
- 配置SpringMVC核心控制器DispathcerServlet
其本质属于servlet,需要在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:spring_mvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
- 创建Controller类和视图界面
controller类需要添加@conponent注解 - 使用注解配置Controller类中的映射地址
使用@RequestMapping注解 - 配置SpringMVC核心文件spring-mvc.xml
<context:component-scan base-package="kxk.controller"/>
dao层、service层的内容在applicationContext.xml中进行配置扫描即可
在MVC配置中只需要对controller包进行扫描即可。需要注意的是,该配置文件需要在servlet初始化的时候,对其init-param进行配置,告诉其配置文件的路径。
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring_mvc.xml</param-value>
</init-param>
- 客户端发起请求测试
按照controller类中@requestmapping里配置的路径进行访问即可。
网友评论