美文网首页- [ Spring MVC ]
一,Spring MVC介绍及环境配置

一,Spring MVC介绍及环境配置

作者: 好多可乐 | 来源:发表于2021-02-08 23:30 被阅读0次

    一,Spring MVC介绍

    一,简介

    • 是spring体系轻量级web mvc框架

    • 基于spring ioc容器运行,所有对象被ioc管理,提高了程序的健壮性与稳定性

    • MVC是架构模式,不是设计模式

    • View:界面部分,和用户进行交互,比如通过界面查询结果,通过表单接收用户信息等

    • Model:数据,相当于java中业务模式部分

    • Controller:中介,是mvc的核心,用于接收视图(view)中传入的数据,再根据数据调用后端业务逻辑(model)得到结果,再通过控制器将后端结果返回视图中(优势:界面和后端java业务逻辑有效解耦,提高程序可维护性)

    • 主要用途:简化web应用开发

    在这里插入图片描述
    二,Spring 5.x版本变化
    在这里插入图片描述
    • 响应式编程:基于事件来的,比如前端点击按钮触发单击响应事件。后端就是当触发某个事件时候,自动去执行某一段代码,专注构建对事件做出响应的响应程序,是新的开发理念和风格(本次课程不涉及这部分)

    • 和4.0版本没有很大区别,99%代码都是相同的

    三,spring mvc文档:

    https://docs.spring.io/spring-framework/docs/current/reference/html/web.html

    二,Idea环境下创建maven webapp:

    1. 创建maven工程
    2. 配置web功能:


      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
    3. 配合Tomcat 运行web文件


      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

    三,spring mvc环境配置

    1. maven依赖spring-webmvc
    <repositories>
        <repository>
            <id>aliyun</id>
            <name>aliyun</name>
            <url>https://maven.aliyun.com/repository/public</url>
        </repository>
    </repositories>
    
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.1.9.RELEASE</version>
        </dependency>
    </dependencies>
    
    1. web.xml配置DispatchServlet(springmav最重要的一个类。作用:对所有请求进行拦截)
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="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_3_1.xsd"
             version="3.1">
        <!--DispatcherServlet是springmvc最核心的对象,用于拦截http请求,并根据请求的url调用与之对应的controller方法,来完成http请求的处理。
        相当于DispatcherServlet是公司前台,controller相当于公司对应的人-->
        <servlet>
            <servlet-name>springmvc</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <!--applicationContext.xml-->
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:applicationContext.xml</param-value>
            </init-param>
            <!--在web启动时自动创建spring ioc容器,并初始化dispatcherServlet-->
            <load-on-startup>0</load-on-startup>
    
        </servlet>
        <!--映射-->
        <servlet-mapping>
            <servlet-name>springmvc</servlet-name>
            <!--/代表拦截所有请求-->
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    

    </web-app>

    1. 配置applicationContext的mvc标记
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:mvc="http://www.springframework.org/schema/mvc"
           xmlns:context="http://www.springframework.org/schema/context"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mv="http://www.springframework.org/schema/mvc"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
                http://www.springframework.org/schema/beans/spring-beans.xsd
                http://www.springframework.org/schema/context
                http://www.springframework.org/schema/context/spring-context.xsd
                http://www.springframework.org/schema/mvc
                http://www.springframework.org/schema/mvc/spring-mvc.xsd">
        <!--component-scan:在spring ioc初始化过程中,自动创建并管理com.imooc.springmvc及其子包中拥有以下注解的对象:
        @Repository
        @Service
        @Component
        @Controller
        -->
        <context:component-scan base-package="com.imooc.springmvc"></context:component-scan>
        <!--启用spring mvc注解开发模式-->
        <mvc:annotation-driven/>
        <!--将图片/js/css等静态资源排除在外,提高执行效率-->
        <mvc:default-servlet-handler/>
    </beans>
    
    1. 开发Controller控制器
    @Controller
    public class TestController {
    
        @GetMapping("/t") //localhost/t
        @ResponseBody  //直接向响应输出字符串数据,不跳转界面
        public String test() {
            return "SUCCESS";
        }
    }
    
    1. 测试
    • 进行tomcat配置:左上角tomcat-edit configration-deployment-点击编辑键-按照下图操作-ok


      在这里插入图片描述
    • 点击debug启动tomcat

    • 网页查看


      在这里插入图片描述

      ps:如果点击debug后又对代码进行调整,可以右键-Reload changed classes进行重新编译,热部署

    可以把TestController看成原有servlet的替代品,在开发时编写标准方法,也不再引入请求响应对象,只需要在方法中增加对应的注解即可完成web请求处理和结果返回。


    在这里插入图片描述

    相关文章

      网友评论

        本文标题:一,Spring MVC介绍及环境配置

        本文链接:https://www.haomeiwen.com/subject/hlcqxltx.html