美文网首页
基本数据类型及对象类型作为参数

基本数据类型及对象类型作为参数

作者: kanaSki | 来源:发表于2019-08-19 22:41 被阅读0次

将内容写到方法参数中,SpringMVC只要有这个内容,便会自动注入(下述情况get/post均可)

如前端传递name及age参数:

@Controller
public class DemoController {
    @RequestMapping("demo")
    public String demo(String name, int age, Person person) {
        return "main.jsp";
    }
}

其中person具有name及age属性,同时具有相应属性的get、set方法,则SpringMVC会将name、age以及person中的name、age进行赋值,(SpringMVC能够对类型进行自动转换,同时只要SpringMVC接收参数只要有,就能赋值,无论次数),只要保证参数名称和请求中传递的参数名相同,方法参数为引用类型(如String)而且请求参数没有该属性,则为null,如果是基本数据类型,没有该属性将会报错

如果参数名不一致,可以使用@RequestParam注解:(如果前端传递数据为name1,age1)

@Controller
public class DemoController {
    @RequestMapping("demo")
    public String demo(@RequestParams('name1")String name,@RequestParam("age1") int age) {
        return "main.jsp";
    }
}

基本数据类型可以使用requestParam的defaultValue属性,设置默认值,防止请求参数没有该值时出错;同时具有required属性,表示请求参数是否必须具有该属性,设置为true没有该参数则报异常,如果required设置为true,同时设置defaultValue,即使请求参数没有该属性值,也不会报错,将使用默认值

如果前端有一个多选框,name为hover,同时选中多个(传递多个同名参数),可以使用List或者数组接收:

@Controller
public class DemoController {
    @RequestMapping("demo")
    public String demo(@RequestParams('hover")List<Stirng> list) {
        return "main.jsp";
    }
}

请求参数可以设置为peo.name及peo.age为下面的Demo对象传值

public class Demo {
    private People peo;

    public People getPeo() {
        return peo;
    }

    public void setPeo(People peo) {
        this.peo = peo;
    }
}
@Controller
public class DemoController {
    @RequestMapping("demo")
    public String demo(Demo demo) {
        return "main.jsp";
    }
}

请求参数可以设置为peo[0].name,peo[0].age及peo[1].name,peo[1].age为下面的Demo对象传值

public class Demo {
    private List<People> peo;

    public List<People> getPeo() {
        return peo;
    }

    public void setPeo(List<People> peo) {
        this.peo = peo;
    }
}

restful传值方式:简化jsp中参数编写格式
请求url:demo/123/abc

@Controller
public class DemoController {
    // 使用PathVariable注解或者同名参数均可
    @RequestMapping("demo/{id1}/{name1}")
    public String demo(@PathVariable("id1")int id,@PathVariable("name1")String name) {
        // 注意main.jsp是相对路径,此时跳转路径将为/demo/123/main.jsp
        return "main.jsp";
    }
}

相关文章

  • 基本数据类型及对象类型作为参数

    将内容写到方法参数中,SpringMVC只要有这个内容,便会自动注入(下述情况get/post均可) 如前端传递n...

  • 对象类型的参数传递

    对象类型的参数传递: JAVA中只有值传递.基本类型好理解,直接传递数值 基本数据类型作为参数,直接操作引用类型作...

  • 2021-05-17 Arrays.sort方法与Collect

    1,Arrays.sort方法的参数分为基本数据类型和对象类型(1)参数为基本类型:双轴快排 (2)参数为对象类型...

  • Block

    1. 什么是数据类型 a. 可以作为参数传递 b.可以作为返回值返回 c.声明成变量 基本数据类型;对象类型(NS...

  • 第十六天学习Java(抽象类)

    2.0引用了类型作为参数 设计方法的时候,方法中可能需要参数(数据类型参数名) 数据类型: 基本类型:byte,s...

  • NO.42 StringBuffer与String作为参数传递问

    A:形式参数问题 String作为参数传递 StringBuffer作为参数传递 基本数据类型,不改变其值...

  • Java中是传参数还是引用传递?

    示例1: 基本类型数据作为参数传递 结果: 示例2 对象作为参数传递 输出结果: 无论是基本类型作为参数传递,还是...

  • nodejs笔记-异步编程

    1.函数式编程 1.1高阶函数 函数参数只接受基本数据类型或者对象引用,返回值也是基本数据类型和对象引用。 高阶函...

  • MyBaits——SQL映射文件中'#{}'与'${}'的区别

    #{}、${} #{参数}:占位符; 参数类型: 1)、可以接受任意的基本数据类型; 注、当参数为基本数据数据类型...

  • C语言数组注意事项

    数组和函数 基本数据类型和函数基本数据类型作为函数参数,在函数中修改形参的值不会改变函数外变量的值基本数据类型有:...

网友评论

      本文标题:基本数据类型及对象类型作为参数

      本文链接:https://www.haomeiwen.com/subject/hdcysctx.html