SpringMVC的概念以及快速入门示例

 更新时间:2023年05月16日 09:39:02   作者:bfhonor  
这篇文章主要介绍了SpringMVC的概念以及快速入门示例,SpringMVC 已经成为目前最主流的MVC框架之一,它通过一套注解,让一个简单的 Java 类成为处理请求的控制器,而无须实现任何接口,需要的朋友可以参考下

一、SpringMVC的简介

(一)SpringMVC概述

  • SpringMVC是一种基于Java的实现MVC设计模型的请求驱动类型的轻量级Web框架,属于SpringFrameWork的后续产品,已经融合在 Spring Web Flow 中。
  • SpringMVC 已经成为目前最主流的MVC框架之一,并且随着Spring3.0 的发布,全面超越 Struts2,成为最优秀的 MVC 框架。它通过一套注解,让一个简单的 Java 类成为处理请求的控制器,而无须实现任何接口。同时它还支持 RESTful 编程风格的请求。

(二)SpringMVC快速入门

需求:客户端发起请求,服务器端接收请求,执行逻辑并进行视图跳转。

(1)开发步骤

  • ①导入SpringMVC相关坐标
  • ②配置SpringMVC核心控制器DispathcerServlet
  • ③创建Controller类和视图页面
  • ④使用注解配置Controller类中业务方法的映射地址
  • ⑤配置SpringMVC核心文件 spring-mvc.xml
  • ⑥客户端发起请求测试

在这里插入图片描述

(2)代码实现 ①、导入Spring和SpringMVC的坐标、导入Servlet和Jsp的坐标

 <!--Spring坐标-->
 <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-context</artifactId>
     <version>5.0.5.RELEASE</version>
 </dependency>
 <!--SpringMVC坐标-->
 <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-webmvc</artifactId>
     <version>5.0.5.RELEASE</version>
 </dependency>
<!--Servlet坐标-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
</dependency>
<!--Jsp坐标-->
<dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>jsp-api</artifactId>
    <version>2.0</version>
</dependency>

②在web.xml配置SpringMVC的核心控制器**

<!--配置SpringMVC的前端控制器-->
<servlet>
    <servlet-name>DispatcherServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!--加载Spring-mvc.xml文件,在配置控制器的时候告知配置文件-->
    <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>

③、在src\main\java里面创建com.itheima.controller包,并且在此包下面创建Controller和业务方法

package com.itheima.controller;
public class UserController {
    public String save(){
        System.out.println("Controller save running...");
        //return要返回要跳转的视图
        return "success.jsp";
    }
}

③、在webapp文件里面创建视图页面success.jsp文件

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <h1>Success!!</h1>
</body>
</html>

④、配置注解、请求映射

package com.itheima.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller//👈将UserController放在Spring容器当中
public class UserController {
    //👇请求地址与方法的映射
    @RequestMapping("/quick")
    public String save(){
        System.out.println("Controller save running...");
        //return要返回要跳转的视图
        return "success.jsp";
    }
}

⑤、在src\main\resources文件下创建spring-mvc.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       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
">
    <!--Controller的组件扫描-->
    <context:component-scan base-package="com.itheima.controller"/>
</beans>

⑥、访问测试地址

//localhost:8080/itheima_springmvc/quick 

控制台打印

在这里插入图片描述

在这里插入图片描述

(3)SpringMVC流程图示

在这里插入图片描述

在这里插入图片描述

到此这篇关于SpringMVC的概念以及快速入门示例的文章就介绍到这了,更多相关SpringMVC快速入门内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java stream流中peek用法简单示例

    Java stream流中peek用法简单示例

    这篇文章主要给大家介绍了关于Java stream流中peek用法的相关资料,Java Stream中的peek()方法也是用于查看每个元素,但不改变流的操作的方法,文中通过代码介绍的需要的朋友可以参考下
    2023-12-12
  • 一文揭晓如何在Java中终止一个线程

    一文揭晓如何在Java中终止一个线程

    工作中我们经常会用到线程,一般情况下我们让线程执行就完事了,那么你们有没有想过如何去终止一个正在运行的线程呢?本文就来带大家一起看看
    2023-03-03
  • SpringCloud中数据认证加密的方法总结

    SpringCloud中数据认证加密的方法总结

    在当今分布式系统的日益复杂和信息传递的广泛网络化环境中,数据的加密和认证作为保障信息传递安全的关键手段,Spring Cloud,作为一套构建微服务架构的强大框架,提供了多种灵活而强大的数据加密和认证方式,本文给大家总结了SpringCloud数据认证加密的方法
    2024-03-03
  • 详解mybatis多对一关联查询的方式

    详解mybatis多对一关联查询的方式

    这篇文章主要给大家介绍了关于mybatis多对一关联查询的相关资料,文中将关联方式以及配置方式介绍的很详细,需要的朋友可以参考下
    2021-06-06
  • SpringBoot整合MyBatisPlus配置动态数据源的方法

    SpringBoot整合MyBatisPlus配置动态数据源的方法

    这篇文章主要介绍了SpringBoot整合MyBatisPlus配置动态数据源的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-05-05
  • Java语言Lang包下常用的工具类介绍

    Java语言Lang包下常用的工具类介绍

    这篇文章主要介绍了Java语言Lang包下常用的工具类介绍,次奥变觉得挺不错的,这里分享给大家,需要的朋友可以参考下。
    2017-10-10
  • Java Lambda表达式与匿名内部类的联系和区别实例分析

    Java Lambda表达式与匿名内部类的联系和区别实例分析

    这篇文章主要介绍了Java Lambda表达式与匿名内部类的联系和区别,结合实例形式分析了Java Lambda表达式与匿名内部类功能、用法、区别及操作注意事项,需要的朋友可以参考下
    2019-10-10
  • Spring Cloud Eureka 服务上下线监控的实现

    Spring Cloud Eureka 服务上下线监控的实现

    这篇文章主要介绍了Spring Cloud Eureka 服务上下线监控的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • Kotlin 基础教程之类、对象、接口

    Kotlin 基础教程之类、对象、接口

    这篇文章主要介绍了Kotlin 基础教程之类、对象、接口的相关资料,需要的朋友可以参考下
    2017-06-06
  • Spring Boot集成netty实现客户端服务端交互示例详解

    Spring Boot集成netty实现客户端服务端交互示例详解

    这篇文章主要给大家介绍了关于Spring Boot集成netty实现客户端服务端交互的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12

最新评论