SpringMVC-请求与相应

news2024/11/27 23:50:32

一、环境准备

<dependencies>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>  //确定范围避免与tomcat冲突
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId> //启动spring内的webmvc
      <version>5.2.10.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.9.0</version>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.1</version>
        <configuration>
          <port>80</port>
          <path>/</path>
          <uriEncoding>UTF-8</uriEncoding>  //此处是解决tomcat中文乱码问题
        </configuration>
      </plugin>
    </plugins>
  </build>

二、请求

1.设置映射路径

优化后的:可以到看,user和book类中都有save()方法,故应该在类上添加@RequestMapping()来区分两个类。

@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping("/save")
@ResponseBody
public String save(){
System.out.println("user save ...");
return "{'module':'user save'}";
}
@RequestMapping("/delete")
@ResponseBody
public String save(){
System.out.println("user delete ...");
return "{'module':'user delete'}";
}
}
@Controller
@RequestMapping("/book")
public class BookController {
@RequestMapping("/save")
@ResponseBody
public String save(){
System.out.println("book save ...");
return "{'module':'book save'}";
}
}

2.get请求出现中文乱码 

添加环境准备中<configuration>标签的 <uriEncoding>UTF-8</uriEncoding>  

3.post请求出现乱码 

post请求需要配置过滤器,在ServletContainersInitConfig中

4.五种请求参数

(1).普通参数

    拓展应用:

@RequestParam("name")中定义的name可以把username当成name来传参

 

(2).POJO数据类型

其实就是传递对象

(3).嵌套POJO类型参数

(4).数组类型参数

(5). 集合类型参数

集合类型参数在形参接受时要用@RequestParam修饰。

原因::SpringMVC将List看做是一个POJO对象来处理,将其创建一个对象并准备把前端的数 据封装到对象中,但是List是一个接口无法创建对象,所以报错。

知识点 

5.JSON数据传输参数 

常见的json数据格式

(1).JSON普通数组

(2).JSON对象数据

(3).JSON对象数组

 

知识点 

6.日期类型参数传递 

 注意:SpringMVC默认支持的字符串转日期的格式为yyyy/MM/dd

如果要接收不同格式的参数,可以这样:

这些转换由SpringMVC来做,通过调用Converter接口

三.响应

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1042167.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

iOS-自定义Intent及ShortCut,能通过快捷指令唤醒APP并跳转到指定页面

1.Xcode->New->File->搜索Intent 2.在新建的intent文件中中New intent 3.完善资料&#xff0c;内容可自定义 4.创建Extension&#xff0c;file -> new -> target , 选择 Intents Extension 即可 创建完成后&#xff0c;在intents文件中勾选以下target&#xff0…

独步全球:为何TikTok成为创业者的首选平台?

在当今数字时代&#xff0c;社交媒体平台的崛起已经成为了创业者们开展业务、推广产品和建立品牌的关键方式。 然而&#xff0c;在众多社交媒体平台中&#xff0c;TikTok正以惊人的速度崭露头角&#xff0c;成为越来越多创业者的首选平台。本文将深入探讨为何TikTok如此吸引创…

双指数移动平均线DEMA指标公式,减少传统均线的滞后性

双指数移动平均线DEMA由Patrick Mulloy发明的&#xff0c;对指数移动平均线EMA进行了改进&#xff0c;用于减少传统均线的滞后性&#xff0c;于1994年发表在美国金融类月刊《Technical Analysis of Stocks & Commodities》。 双指数移动平均线DEMA是通过两个指数移动平均线…

MyBatis 执行流程分析

文章目录 1. MyBatis 执行流程概述2. MyBatis 配置文件详解3. Mappers 映射器 1. MyBatis 执行流程概述 上篇文章讲到 MyBatis入门 MyBatis 的基本入门案例我们实现了通过 MyBatis 去获取数据库的数据&#xff0c;那么他的基本流程如下&#xff1a; 第一步&#xff1a;是从配置…

linux 归档和压缩文件和目录

打包&#xff1a; tar 是 Unix 和 Linux 系统中非常常用的命令之一。它可以将多个文件和目录打包成一个归档文件&#xff0c;并且支持压缩和解压缩功能。 将文件或&#xff08;和&#xff09;目录打包成一个归档文件 tar -cvf Arithmetic_Ghost.tar file1 file2 directory/…

如何在 Spring MVC 中处理表单提交

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

校物联网智慧安全用电平台的设计和运用-安科瑞黄安南

一.前言 安全用电历来都是学校安全工作的一个重点&#xff0c;然而每年因此发生的人身伤害以及火灾事故却在继续着&#xff0c;究其原因&#xff0c;主观上是我们的防患意识淡薄&#xff0c;客观上则是由于学生在宿舍使用违规电器、乱拉电线造成的。 现代的大学生宿舍&#x…

第二章 计算机系统基础知识笔记

计算机划分为硬件和软件 二、硬件部分 2.1 处理器 CISC&#xff1a;x86结构的复杂指令集 RISC&#xff1a;arm和power的精简指令集 2.2 存储器 片上缓存&#xff1a;在CPU里的集成缓存&#xff0c;SRAM&#xff0c;16KB~512KB。不同性能划分成一级或二级片外缓存&#xf…

LeetCode力扣020:有效的括号

有效的括号 实现思路 设立判定条件遍历的范围 代码实现 class Solution(object):def isValid(self, s):""":type s: str:rtype: bool"""nlen(s)for i in range(0,n-1):if s[i]( and s[i1]!):return Falseif s[i][ and s[i1]!]:return Falseif s…

macOS 中 Apple Distribution 与 Apple Development 证书不受信任解决方法

造成这个现象的原因是 Worldwide Developer Relations 中间关系证书缺失 我们只需要将相关证书下载并导入到「系统」级钥匙串即可 首先访问网站&#xff1a;https://www.apple.com/certificateauthority 下载右侧 Apple Intermediate Certificates 下方的如下证书 Develope…

正则表达式的应用(前端写法)

文章目录 1、匹配字符串中&#xff0c;a标签的href值2、校验邮箱3、校验手机号码3、待添加... 1、匹配字符串中&#xff0c;a标签的href值 (1) 代码 /*** description 匹配字符串中&#xff0c;a标签的href值* param {string} str 匹配的字符串* return {Array} 返回href值*/…

【算法练习Day6】四数相加赎金信三数之和四数之和

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;练题 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录 四数相加赎金信三数之和…

驱动开发---基于gpio子系统编写LED灯的驱动

一、GPIO子系统相关API 1.解析GPIO相关的设备树节点 struct device_node *of_find_node_by_path(const char *path) 功能&#xff1a;根据设备树节点路径解析设备树节点信息 参数&#xff1a; path&#xff1a;设备树所在的节点路径 /mynode0X12345678 返回值&#xff1a;成…

【Aurora 8B/10B IP(1)--初步了解】

Aurora 8B/10B IP(1)–初步了解 1 Aurora 8b/10b IP的基本状态: •通用数据通道吞吐量范围从480 Mb/s到84.48 Gb/s •支持多达16个连续粘合7GTX/GTH系列、UltraScale™ GTH或UltraScale+™ GTH收发器和4绑定GTP收发器 •Aurora 8B/10B协议规范v2.3顺从的 •资源成本低(请参…

环保电商:可持续发展在跨境电子商务中的崭露头角

近年来&#xff0c;环保意识的崛起和可持续发展的重要性日益凸显&#xff0c;已成为全球关注的焦点。在这个背景下&#xff0c;电子商务行业也逐渐加入了可持续发展的浪潮&#xff0c;形成了新的商业机会。 跨境电子商务领域&#xff0c;一股环保电商的潮流正崭露头角&#xf…

推荐一个AI人工智能技术网站(一键收藏,应有尽有)

1、Mental AI MentalAI&#xff08;https://ai.ciyundata.com/&#xff09;是一种基于星火大模型和文心大模型的知识增强大语言模型&#xff0c;专注于自然语言处理&#xff08;NLP&#xff09;领域的技术研发。 它具备强大的语义理解和生成能力&#xff0c;能够处理各种复杂的…

SRM系统一键查询:简化采购流程

一、SRM系统一键查询的意义和功能 1. 统一数据源&#xff1a;SRM系统将企业的供应商信息、采购订单、交易记录等数据整合到一个统一的平台&#xff0c;方便用户进行查询和分析。 2. 快速访问供应商信息&#xff1a;一键查询功能使用户能够快速访问和查找特定供应商的详细信息…

如何在居家办公、咖啡厅办公和联合办公空间办公中抉择?

在选择居家办公、咖啡厅办公和联合办公空间办公时&#xff0c;需要考虑以下因素&#xff1a; 1. 工作效率&#xff1a;居家办公可以提供一个安静、无干扰的环境&#xff0c;这有时可以提高工作效率。然而&#xff0c;如果家庭环境不够理想&#xff0c;或者需要与同事进行面对面…

讲讲项目里的状态存储器vuex

前言 在一个企业级的应用里&#xff0c;状态存储器起着举足轻重的作用。与我们日常的练手项目不同&#xff0c;企业级项目的vuex更专注更集中更便捷。 简单回顾 让我们简单回顾一下vuex这个插件的用法。 Vuex 的状态存储是响应式的。 当 Vue 组件从 store 中读取状态的时候&…

ShardingSphere分库分表(二):基础介绍

1、简介 Apache ShardingSphere 是一套开源的分布式数据库中间件解决方案组成的生态圈&#xff0c;它由 JDBC、Proxy 和 Sidecar&#xff08;规划中&#xff09;这 3 款相互独立&#xff0c;却又能够混合部署配合使用的产品组成。 它们均提供标准化的数据分片、分布式事务和数…