栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring MVC参数传递

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring MVC参数传递

@RequestParam(value="name1" ,required =false)

//required     开启注解后,required默认是true,必须传参数要不然报错

//value name 都可以效果一样,设置名称之后,传参直接传value或name里面的值

 

开启注解之后,必须传值,不管你有没有命名 

 

 当required=false的时候,可以不用传值

defaultValue = “t3" 是默认传值为"t3" 

@PathVariable

需要设置一个RequestMapping 的访问路径

@RequestMapping(value={
        "demo1/{name1}/{name2}/{name3}"
        // 配合name3选传,此种场景应用较少,一般使用此注解均为必传参数
        ,"demo1/{name1}/{name2}"
})
@RequestMapping(value={
        "demo1/{name1}/{name2}/{name3}"
        // 配合name3选传,此种场景应用较少,一般使用此注解均为必传参数
        ,"demo1/{name1}/{name2}"
})
public String demo1(Model model
        //注意,没加注解,使用问号后追加参数请求
        ,String name
        // 必传
        ,@PathVariable String name1
        // 必传
        ,@PathVariable("name2") String name2
        // 选传
        ,@PathVariable(value = "name3",required = false) String name3
){
    System.out.println("name:"+name);
    System.out.println("name1:"+name1);
    System.out.println("name2:"+name2);
    System.out.println("name3:"+name3);
    return "hello";
}

设置非必传需要在RequestMapping设置映射地址

 

 

在参数那里加@RequestBody

用POST 

用json传数据

 可以通过postman传也可以通过ajax传值

 数组

非json请求

通过一个名字一样的参数

  

localhost:8080/demo3?ids=1&ids=2&ids=3
或
localhost:8080/demo3?ids=1,2,3

json请求 需要在传参加上@RequestBody

直接中括号阔住

[1,2,3]

 

要POST 

 集合List

非JSON请求

localhost:8080/demo4?idList=1&idList=2
或
http://localhost:8080/demo4?idList=1,2,3

 

后台(@RequestParam注解不可缺少)

@ResponseBody
@RequestMapping("demo4")
public List demo4(@RequestParam List idList){
    System.out.println("ids:"+idList);
    return idList;
}

json请求

 

 

对象+List同时接收

非JSON请求

 

 

 

 

 

name:
number:
nickname: number:
nickname: number:
nickname: number:
nickname: number:
name: 
111
number: 
111
demoCList[0].nickname: 
1
demoCList[0].number: 
11
demoCList[1].nickname: 
222
demoCList[1].number: 
22
demoCList[2].nickname: 
333
demoCList[2].number: 
333
demoCList[3].nickname: 
444
demoCList[3].number: 
44
@ResponseBody
@RequestMapping("demo6")
public Demo demo6(Demo demo){
    System.out.println("demo:"+demo);
    return demo;
}
==============================================
public class Demo {

    private String name;
    private String number;
    private List demoCList;
    ....省略get set方法....
}

JSON请求

{
    "name":"0616",
    "number":"2",
    "demoCList":[
        {
            "id":"2",
            "nickname":"1111",
            "number":"11111"
        },
        {
            "nickname":"1111",
            "number":"11111"
        },
        {
            "nickname":"1111",
            "number":"11111"
        }
    ]
}
@ResponseBody
@RequestMapping("demo7")
public Demo demo7(@RequestBody Demo demo){
    System.out.println("demo:"+demo);
    return demo;
}

  

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/771218.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号