javaweb数据传参类型(2)

前言

友友们好呀,今天来分享一下对于各种数据类型传参的问题,今天陪伴我们的云海

目录

前言

数组集合传参

补充

日期参数

补充

Json格式数据传参

补充

路径参数

补充

今日分享


​​​​​​​数组集合传参

类似于我们之前进行的简单的参数传递,我们把实参写在我们的方法内部充当形式参数,这里的数组传参就是把数组名进行直接当形参,然后直接获取属性;

       @RestController
     @RequestMapping("/shuzu")
    public String shuzu(String[] hobby)
    {
        System.out.println(Arrays.toString(hobby));
        return "ok";
    }

这里我们的服务器上的代码就是如此,运行之后我们就可以实现对应的数据传递啦

对于集合其实差不多和数组保持一致,但是在对应的参数上必须保持传递的参数名称一致。

这里其实还不如就用数组呢!!除此之外我们对于参数也需要设置对应的注解来绑定参数

@RequestParam:将请求参数绑定到你控制器的方法参数上(是springmvc中接收普通参数的注解)。

@RestController
@RequestMapping("/jihe")
    public String jihe(@RequestParam List<String> hobby)
    {
        System.out.println(hobby);
        return "ok";
    }

大家可以看到如果我们不去写那个注解,就会报错200;默认每一个元素都是在数组当中,相当于各自分散的,加上注解后我们就可以把他们绑定到一起,就可以利用集合来进行读取啦

补充

对于注解@RequestParam的解释,我也是半吊子,但是这篇文章写的very good,大家可以参考

注解@RequestParam_@requestparam()-CSDN博客

日期参数

日期参数无非就是传递对应的日期格式或者时间格式什么的,注意的是这里面也是需要对应的注解的,首先是在javaAPi那一块我们学的时间类,之后配合注解实现对于时间格式的限定

差不多就是这三类,文字隔开,-符号隔开,/符号隔开

对于代码我们就是如此简单的几行,相信大家可以明白

@RestController
@RequestMapping("/time")
    public String time(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime dateTime)
    {
        System.out.println(dateTime);
        return "ok";
    }

这里的运行的服务器端进行的数据请求事以-符号来进行结束的。

补充

注解@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")这里是对于日期格式的限定,直白的话就是格式对了我就解析,不对我就报错,这里我的解释是口头理解的,具体的大家可以参考此文

Spring @DateTimeFormat日期格式化时注解浅析分享-CSDN博客

Json格式数据传参

正是如此对应的数据格式,

   @RestController
 @RequestMapping("/json")
    public String p(@RequestBody proj pr)
    {
        System.out.println(pr);
        return "ok";
    }

对应的我们的服务器端代码,我们就是可以直接设置post数据请求,然后我们利用对应的json格式就可以直接进行数据传输;

运行结果截图我们可以看到符合我们的输入

补充

@RequestBody对于post的数据请求来进行解释数据绑定,大多数情况依然是post请求,并且可以将json数据格式封装到对应的注解当中,具体的细节大家参考这篇文章;

@RequestBody注解-CSDN博客

路径参数

路径参数顾名思义就是我们在网址访问路径上的参数类型,可以包含一个或者多个参数,但是要求对应的参数名称与请求参数名称保持一致,以下是代码展示

//路径参数
    @RequestMapping("/word/{id}/{name}")
    public String word(@PathVariable Integer id,@PathVariable String name)
    {
        System.out.println(id+""+name);
        return "ok";
    }

我们这里传递对应的http://localhost:8080/word/1/tom

对于1/tom就是id/name来实现参数传递

补充

@PathVariable属于对应的路径占位符,可以把路径绑定到对应的参数当中

当然啦具体的解释还是要参考专业的文章@PathVariable(路径变量)注解详解_@pathvariable注解的参数-CSDN博客

今日分享

没办法发那个战双啦,只能在最后面发,我喜欢战双。

如果只是一味遵从既定的筛选规则,那么这条规则将会是我们永远也走不出的牢笼

  • 27
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟小木

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值