0


JavaWeb框架:Spring MVC介绍

Spring MVC

在这里插入图片描述

概述

MVC(Model View Controller,模型-视图-控制器),作为一种设计模式,用于应用程序的分层开发。

Spring MVC,由 Spring 框架提供的基于 MVC 设计模式的一个轻量级 Web 开发框架。Spring MVC 提供了一个前端控制器 DispatcherServlet 来分派请求,然后通过配置处理程序映射、视图解析等,使 MVC 模式开发更高效。

Spring MVC 五大组件:前端控制器 DispatcherServlet处理器映射 HandlerMapping处理器 Controller模型视图 ModelAndView视图解析器 ViewResolver

基本原理

  • 前端控制器 DispatcherServlet 接收客户端请求,依据处理器映射 HandlerMapping 配置调用相应的处理器 Controller
  • 处理器 Controller 将处理请求,把结果封装成模型视图 ModelAndView 对象返回给前端控制器 DispatcherServlet
  • 前端控制器 DispatcherServlet 依据视图解析器 ViewResolver 的解析,得到真实视图对象(JSP等)对处理结果的展现在这里插入图片描述

简单示例:
首先,创建一个 Maven 的 Web 项目
在这里插入图片描述

然后,在 pom.xml 添加依赖

<dependencies><!-- https://mvnrepository.com/artifact/org.springframework/spring-context --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.3.25</version></dependency><!-- https://mvnrepository.com/artifact/org.springframework/spring-web --><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>5.3.25</version></dependency><!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.3.25</version></dependency><!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency><!-- https://mvnrepository.com/artifact/log4j/log4j --><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.16</version></dependency><!-- https://mvnrepository.com/artifact/commons-logging/commons-logging --><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.2</version></dependency></dependencies>

接着,对 webapp/WEB-INF 目录下的 web.xml 进行配置

<?xml version="1.0" encoding="UTF-8"?><web-appxmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!-- 配置前端控制器 dispatcherServlet --><servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!-- 配置 springmvc 的配置文件所在位置 --><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc.xml</param-value></init-param><!-- 配置初始化参数,启动时创建 servlet 对象 --><load-on-startup>1</load-on-startup></servlet><!-- 配置url地址 --><servlet-mapping><servlet-name>dispatcherServlet</servlet-name><!-- 根目录下所有地址,其他 servlet 除外 --><url-pattern>/</url-pattern></servlet-mapping></web-app>

再在 resources 文件下创建 springmvc.xml 配置文件

<?xml version="1.0" encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"><context:component-scanbase-package="cn.edu.springmvcdemo"/><!-- 配置 springmvc 视图解析器 --><beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"><!-- 配置视图页面 --><propertyname="prefix"value="/WEB-INF/views/"></property><propertyname="suffix"value=".jsp"></property></bean></beans>

随之,在 webapp/WEB-INF 目录下创建 views 文件,再在其文件下创建 index.jsp

<html><body><h2>Hello World!</h2></body></html>

最后,测试结果

packagecn.edu.springmvcdemo.controller;importorg.springframework.stereotype.Controller;importorg.springframework.web.bind.annotation.RequestMapping;@ControllerpublicclassIndexDemo{@RequestMapping("/index")publicStringindex(){return"index";//返回对应页面文件名}}

结果如图:
在这里插入图片描述

标签: Spring MVC

本文转载自: https://blog.csdn.net/qq_56886142/article/details/131187401
版权归原作者 啊Q老师 所有, 如有侵权,请联系我们删除。

“JavaWeb框架:Spring MVC介绍”的评论:

还没有评论