【JavaEE】_Spring MVC项目获取URL中的参数

本文详细介绍了如何在SpringMVC中使用@PathVariable和@RequestMapping处理单参数和多参数HTTP请求,包括参数的正确映射、URL格式要求以及重命名参数的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1. 获取URL中的单个参数

2. 获取URL中的多个参数


在Spring MVC项目中,获取URL中的参数需要使用@PathVariable注解。

1. 获取URL中的单个参数

.java文件如下:

package com.example.demo.controller;

import com.example.demo.Person;
import org.springframework.web.bind.annotation.*;

import java.util.Arrays;
import java.util.List;

@RequestMapping("/Para")
@RestController
public class ParaController {
    @RequestMapping("/M9/{userId}")
    public String m9(@PathVariable Integer userId){
        return "userId: "+userId;
    }

}

运行启动类,使用postman构造HTTP请求,其中URL带有参数,构造完成后发送,详情如下:

注意URL的格式要与@RequestMapping注解的格式一致:

2. 获取URL中的多个参数

.java文件如下:

package com.example.demo.controller;

import com.example.demo.Person;
import org.springframework.web.bind.annotation.*;

import java.util.Arrays;
import java.util.List;

@RequestMapping("/Para")
@RestController
public class ParaController {
    @RequestMapping("/M9/{userId}/{name}")
    public String m9(@PathVariable Integer userId,@PathVariable String name){
        return "userId: "+userId+"\n"
                +"name:"+name;
    }

}

运行启动类,使用postman构造请求,其中URL有2个参数,详情如下:

注意URL多参数时:

(1).java文件中,在函数参数部分,每一个参数都需要一个@PathVariable注解

(2)请求的URL部分参数需要与.java文件中@RequestMapping注解中的格式保持一致;

(3)URL中的参数与后端的.java代码的对应是有顺序且个数严格匹配的,比如类型不匹配、参数顺序错误与少传与多传参数都会引起错误;

以多参数userId与userName为例,现在请求中不传递userName参数:

(4)若后端需对接收到的请求重命名,可以在@PathVariable注解中标明属性名:

    @RequestMapping("/M9/{userId}/{name}")
    public String m9(@PathVariable Integer userId,@PathVariable("name") String username){
        return "userId: "+userId+"\n"
                +"username:"+username;
    }

只需保证@RequestMapping中指定的URL格式中的属性名@PathVariable中指定的属性名保持一致即可:

再次运行并发送请求可见:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值