美文网首页
接收参数的注解笔记

接收参数的注解笔记

作者: 青橙_7f88 | 来源:发表于2018-05-03 12:38 被阅读0次

                由于之前不是太经常用,所以对@PathVariable、@RequestHeader、@CookieValue、@RequestParam、@RequestBody、@Validated这几个接受参数的注解总是不太明白,到用的时候也分不清楚到底该用谁,今天就百度了一下,做一个笔记,参考此处:https://www.cnblogs.com/caolei1108/p/6214091.html。

    @PathVariable:用来接收restful访问时携带的参数。例如 http:localhost:9001/****/savedemo/white

                    接收例如 

    @PathVariable接收参数

    注意那两个name,如果此处有一个不为name(就是两个不一致时候)需要在@PathVariable中启用value属性进行映射。

    @RequestHeader :可以把Request请求header部分的值绑定到方法的参数上。

    header中的参数列表

    @RequestHeader 接收操作:

    @RequestHeader 接收

       这时候访问hello时候,就会在页面显示我们的host信息--localhost:9001

    @RequestBody 是用来接收到请求中放入body的参数。(一般讲参数扔到body中的,是post)

    @CookieValue 与@RequestBody的用法类似,不过它是可以找到cookie中的参数

    @RequestParam 注解用来接收地址中的参数,参数的格式是http://*****?age=10&moth=10。(我们等会儿给出接收操作)

    @Validated 接收的和@RequestParam 情况类似,但是区别在于它是用模型接收的,也就是说,如果传入参数不是模型能接收的参数,是会接收不到的。

    下面给出@Validated、@RequestBody接收操作和@PathParam、@PathVariable的测试

    接收与测试

    若是@Validated、@RequestBody都能使用,当然要参数传递时的方法不同。上面也有说到他们接收的参数,就不讲传参方法了。

                出于好奇我顺便测试了一下@PathParam、@PathVariable 。@PathParam可以不需要模板,能接收到参数,而@PathVariable需要模板,所以接收不到参数。


    到最后用一个例子结束吧:

     下面看一个url http:loaclhost:/****/savedemo/white?age=10&moth=10 我们应该如何接收这里的三个参数?

        首先要确定age=10&moth=10 这一段是需要@RequestParam或者@PathParam 来接收的。再看前面的white?,我们可以确定的是@PathVariable。

    方法很多给出一种接收操作:

    例子

            好了,结束!

    相关文章

      网友评论

          本文标题:接收参数的注解笔记

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