【JavaEE】_Spring MVC 项目单个及多个参数传参

news2025/1/16 21:59:29

目录

 1. 传递单个参数

1.1 关于参数名的问题

2. 传递多个参数

2.1 关于参数顺序的问题

2.2 关于基本类型与包装类的问题


 1. 传递单个参数

现创建Spring MVC项目,.java文件内容如下:

package com.example.demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RequestMapping("/Para")
@RestController
public class ParaController {
    @RequestMapping("/M1")
    public String m1(String name){
        return "Parameter has Received: Name:"+name;
    }
}

运行启动类,使用Postman向目标地址发送一个GET请求,将待传参数置于query string中,发送的请求与得到的响应如下::

1.1 关于参数名的问题

请注意:客户端传递给服务器的参数应与服务器创建的参数名相同

对于传递单个参数的底层逻辑就是从请求的参数中获取参数名为name的值,并给name赋值;

2. 传递多个参数

在Spring MVC项目的.java文件内容如下:

package com.example.demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RequestMapping("/Para")
@RestController
public class ParaController {
    @RequestMapping("/M2")
    public String M2(String name, Integer age){
        return "Parameters have received: \n"
                + "Name: "+name + "; Age: "+age;
    }
}

运行启动类后,构造HTTP请求并发送,详情如下:

2.1 关于参数顺序的问题

注:多个参数传参,与参数的顺序无关,仅与参数名是否匹配有关;

2.2 关于基本类型与包装类的问题

现以基本类型 int 与 包装类Integer 为例:

现Spring MVC项目的.java文件内容如下:

package com.example.demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RequestMapping("/Para")
@RestController
    @RequestMapping("/M3")
    public String M3(String name, int age){
        return "Parameters have received: \n"
                + "Name: "+name + "; Age: "+age;
    }
}

示例1:当 int 型参数有具体传参时:

运行启动类,构造HTTP请求并发送,详情如下: 

可见接收正常,返回正常;

示例2:当 int 型参数没有具体传参时:

启动运行类,构造HTTP请求并发送,详情如下:

查看报错信息如下:

建议:在开发中尽量使用包装类,如果使用基本类型的参数,必须要传值(除了boolean类型)

关于包装类的问题,可查看数据结构专栏包装类与泛型一文,链接如下:

【数据结构】_包装类与泛型-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_63299495/article/details/136436372

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

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

相关文章

NCDA 大赛 App 设计获奖作品分享!

未来设计师全国高校数字艺术设计大赛简称“NCDA大赛”,是由工信部人才交流中心主办,直接对联合国接国际设计赛事的一个大学生竞赛,不仅由教育部中国高等教育学会认定,教育厅发文立项,还有来自我们都很熟悉的“学习强国…

vue3中指定组件名称:可以使用插件vite-plugin-vue-setup-extend

第一步:安装vite-plugin-vue-setup-extend插件 第二步:修改vite.config.ts文件配置

C#多线程(4)——任务并行库TPL

文章目录 1 什么是TPL2 创建与启动任务3 等待任务4 任务中的异常处理5 取消任务 1 什么是TPL T P L \textcolor{red}{TPL} TPL(Task Parallel Library)任务并行库,是从.NetFramwork4.0后引入的基于异步操作的一组API。TPL的底层是基于多线程实…

nginx: mac使用vscode本地调试nginx

vscode安装c语言插件 在extensions中搜索"c/c", 将前3个插件都安装 在extensions中搜索"cmake", 将前2个插件都安装 下载nginx源码 nginx 源码: https://github.com/nginx/nginx 编译运行Nginx 修改 /auto/cc/conf 文件&…

【论文阅读】单词级文本攻击TAAD2.2

TAAD2.2论文概览 0.前言1-101.Bridge the Gap Between CV and NLP! A Gradient-based Textual Adversarial Attack Frameworka. 背景b. 方法c. 结果d. 论文及代码 2.TextHacker: Learning based Hybrid Local Search Algorithm for Text Hard-label Adversarial Attacka. 背景b…

数据结构——lesson6二叉树基础

前言 hellohello~这里是土土数据结构学习笔记🥳🥳 💥个人主页:大耳朵土土垚的博客 💥 所属专栏:数据结构学习笔记 💥对于数据结构顺序表链表有疑问的都可以在上面数据结构的专栏进行学习哦~感…

ping多个IP的工具

Ping Tool 项目地址 python开发的IP搜索小工具 ping一个网段所有IP,显示结果查看某个ip地址开放监听的端口配置可保存

查询IP地址保障电商平台安全

随着电子商务的快速发展,网购已经成为人们日常生活中不可或缺的一部分。然而,网络交易安全一直是人们关注的焦点之一,尤其是在面对日益频发的网络诈骗和欺诈行为时。为了提高网购平台交易的安全性,一种有效的方法是通过查询IP地址…

Java红黑树实现Map简单示例

红黑树(Red-Black Tree)是一种自平衡的二叉搜索树,它是由 Rudolf Bayer 在 1972 年提出的,后来由 Leo J. Guibas 和 Robert Sedgewick 在 1978 年发表的论文中形式化定义。 红黑树具有以下特性: 1.节点颜色&#xff1…

java数据结构与算法刷题-----LeetCode653. 两数之和 IV - 输入二叉搜索树

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 文章目录 1. 前序遍历加hash2. 中序遍历双指针 1. 前序遍历加hash 解题思…

(上海电力展)2024上海国际智慧电力与电气设备展览会

2024上海国际智慧电力与电气设备展览会 2024 Shanghai International Intelligent Power and Electrical Equipment Exhibition 时 间:2024年7月13-15日 地 点:上海新国际博览中心 展会简介Introduction 随着全球进入互联网和数字经济时…

逻辑分析仪分析硬件spi

一,cubemx配置好后,使用spi接口发送数据; 发送5个字节:1,2,3,4,5; 第1个字节:1; 第2个字节:2; 第3个字节:3&am…

【趣玩一下】StreamDiffusion一秒100张!实时生成二次元老婆照!

源代码 https://github.com/cumulo-autumn/StreamDiffusion 基础原理 首先Stream Batch,是将原来顺序的去噪步骤改为批量化处理。允许在一个批处理中,每幅图像处于去噪流程的不同阶段。 如此一来,可以大大减少UNet推理次数,显著…

基于单片机的医院输液系统设计

目 录 摘 要 Ⅰ Abstract Ⅱ 引 言 1 1系统方案设计与论证 3 1.1系统硬件结构总体设计方案 3 1.2点滴速度测量电路方案的选择与论证 3 1.3液面检测电路方案的选择与论证 4 1.4通过电机控制滴速电路的方案与论证 4 1.5显示器接口电路方案选择与论证 5 1.6键盘接口电路方案选择与…

十:套接字和标准I/O,以及分离I/O流

1 标准I/O函数的优点 C语言标准IO整理 1.1 标准I/O函数的两个优点 标准I/O函数具有良好的移植性。 标准I/O函数可以利用缓冲提高性能 从图中可以看出,使用标准I/O函数传输数据时,经过两个缓冲。例如,使用fputs函数传输字符串 “Hello” 时…

数据分析-Pandas数据的画图设置

数据分析-Pandas数据的画图设置 数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律? 数据表&#x…

TypeScript(四)枚举类型(Enum Types),类型别名(Type),运算符

一、枚举类型 使用枚举我们可以定义一些带名字的常量。 使用枚举可以清晰地表达意图或创建一组有区别的用例。 TypeScript支持数字的和基于字符串的枚举。 枚举类型的特点 可以给一组数值取上一个更好理解的名字;一个枚举中只会存在几个固定的值,并不会…

C语言第三十六弹---文件操作(中)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】 文件操作 1、文件的顺序读写 1.1、顺序读写函数介绍 1.1.1、fgetc 与 fputc 1.1.2、fgets 与 fputs 1.1.3、fscanf 与 fprintf 1.1.4、fread 与 fwrite 1.…

【vue3之组合式API及其新特性】

组合式API及其新特性 一、setup1.写法2.如何访问3.语法糖4.同步返回对象 二、reactive()和ref()1.reactive()2.ref() 三、computed四、watch函数1.侦听单个数据2.侦听多个数据3. immediate4. deep5.精确侦听对象的某个属性 五、生命周期函数六、组件通信1.父传子2. 子传父 七、…

云消息队列 Confluent 版正式上线!

作者:阿里云消息队列 前言 在 2023 年杭州云栖大会上,Confluent 成为阿里云技术合作伙伴,在此基础上,双方展开了深度合作,并在今天(3月1日)正式上线“云消息队列 Confluent 版”。 通过将 Co…