【SpringMVC】第一弹.全面掌握:核心概念与请求响应处理技巧

目录

1、SpringMVC简介

1.1 背景

1.2 SpringMVC概述

1.3 技术体系定位

2、快速入门

2.1 目的

2.2 需求

2.3 步骤

2.4、代码实操

2.5、测试工具

2.5.1 PostMan简介

2.5.2 PostMan安装

2.5.3 PostMan使用

知识点总结

3、请求与参数处理

3.1、请求路径

3.1.1 环境准备

3.1.2 问题分析

3.1.3 解决方式

3.2、请求方式

3.2.1 环境准备

3.2.2 技术分析

3.3、参数

3.3.1、基本数据类型

3.3.2、POJO

3.3.3、嵌套POJO

3.3.4、数组

1、URL地址请求或表单请求

2、后台接收参数

3.3.5、集合(List、Map)

1、List

1、错误接收方式

2、正确接收方式

2.Map

3.5.6、Date日期类型

1、URL地址请求或表单请求

2、后台接收参数

3.5.7、File文件类型

1、前期准备

2、POST请求方式

3、后台接收参数

3.5.7、JSON类型

1、前期准备

2、json请求与接收

3.5.8、中文乱码处理

1、GET请求

2、POST请求

4、响应结果处理

4.1、前期准备

4.2、响应页面

4.2.1、后端接口设置

4.2.2、前端请求

4.3、响应字符串

4.4、响应JSON结果

1、后端接口设置

2、前端请求


1、SpringMVC简介

1.1 背景

Servlet属于web层开发技术,技术特点:

  1. 每个请求都需要创建一个Servlet进行处理
  2. 创建Servlet存在重复操作
  3. 代码灵活性低,开发效率低

是否有技术方案可以解决以上问题

1.2 SpringMVC概述

    • 使用简单、开发便捷(相比于Servlet)
    • 灵活性强

1.3 技术体系定位

  • web程序通过浏览器访问前端页面,发送异步请求到后端服务器
  • 后台服务器采用三层架构进行功能开发  
    • 表现层负责接收请求和数据然后将数据转交给业务层
    • 业务层负责调用数据层完成数据库表的增删改查,并将结果返给表现层
    • 表现层将数据转换成json格式返回给前端
  • 前端页面将数据进行解析最终展示给用户。

表现层采用SpringMVC框架,SpringMVC主要负责的内容有:

  • controller如何接收请求和数据
  • 如何将请求和数据转发给业务
  • 如何将响应数据转换成json发回到前端

2、快速入门

2.1 目的

​ 能基于SpringMvc快速开发一个web应用

2.2 需求

​ 搭建SpringMvc工程,定义UserController.save()方法处理/save请求,返回"{'module':'springmvc'}"。

2.3 步骤

  1. 创建Maven项目,并导入对应的jar包
  2. 创建控制器类
  3. 创建配置类
  4. 创建Tomcat的Servlet容器配置类

2.4、代码实操

  1. 创建Maven项目,并导入对应的jar包

打开IDEA,创建一个新的maven项目

  1. 添加SpringMVC需要的依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.itheima</groupId>
  <artifactId>springmvc_01_quickstart</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging>
  <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
   </properties>
   <!--1. 导入SpringMVC与servlet的坐标--> 
  <dependencies>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>5.2.10.RELEASE</version>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.1</version>
        <configuration>
          <port>8080</port>
          <path>/</path>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

说明:servlet的坐标为什么需要添加<scope>provided</scope>?

  • scope是maven中jar包依赖作用范围的描述,
  • 如果不设置默认是compile在在编译、运行、测试时均有效
  • 如果运行有效的话就会和tomcat中的servlet-api包发生冲突,导致启动报错
  • provided代表的是该包只在编译和测试的时候用,运行的时候无效直接使用tomcat中的,就避免冲突

2.创建控制器类

//2.制作控制器类,等同于Servlet
//2.1必须是一个spring管理的bean
//2.2定义具体处理请求的方法
//2.3设置当前方法的访问路径
//2.4设置响应结果为String类型数据
@Controller
public class UserController {

    @RequestMapping("/save")
    @ResponseBody
    public String save(){
        System.out.println("user save ...");
        return "springmvc";
    }
}

3.创建配置类

//3.定义配置类加载Controller对应的bean
@Configuration
@ComponentScan("com.itheima.controller")
public class SpringMvcConfig {
}

4.创建Tomcat的Servlet容器配置类

//4.定义servlet容器的配置类
public class ServletContainersInitConfig extends AbstractDispatcherServletInitializer {
    //加载springMVC配置
    protected WebApplicationContext createServletApplicationContext() {
        //初始化WebApplicationContext对象
        AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
        //加载指定配置类
        ctx.register(SpringMvcConfig.class);
        return ctx;
    }

    //设置Tomcat接收的请求哪些归SpringMVC处理
    protected String[] getServletMappings() {
        return new String[]{"/"};
    }

    //设置spring相关配置
    protected WebApplicationContext createRootApplicationContext() {
        return null;
    }
}

5.配置Tomcat环境

6.启动运行项目

7.浏览器访问

浏览器输入`http://localhost/save`进行访问,可以看得如下内容

至此SpringMVC的入门案例就已经完成。

2.5、测试工具

2.5.1 PostMan简介

代码编写完后,我们要想测试,

评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值