JavaWeb中常用的请求传参注解有哪些

发布时间:2023-04-04 16:06:39 作者:iii
来源:亿速云 阅读:128

这篇文章主要介绍“JavaWeb中常用的请求传参注解有哪些”,在日常操作中,相信很多人在JavaWeb中常用的请求传参注解有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaWeb中常用的请求传参注解有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1、@RequestMapping

@RequestMapping 既可以用在类级别,也可以用在方法级别,当它定义在类级别的时候,标明该控制器所处理的请求都将被映射到这个路径下。

另外,@RequestMapping中可以使用method属性,如果指定了method属性的值,那么就只能使用指定的请求方法,如果没有指定的话,那么就可以使用HTTP的get/post方法了。

get 请求特点

post 请求的特点

2、@GetMapping

用于将HTTP GET请求映射到特定处理程序方法的注释。

相当于@RequestMapping(method = RequestMethod.GET)

3、@PostMapping

用于将 HTTP POST 请求映射到特定处理程序方法的注释。

相当于@RequestMapping(method = RequestMethod.POST)

4、@RequestParam

这个注解是使用在方法的形参上的,主要用途就是将请求的参数绑定到方法的形参上,有一个required属性,默认情况下是true,就是必须要传参数,如果想该形参可传可不传参数的话,就将属性值设置为false即可。

@RequestMapping("/hello")
  public String hello(@RequestParam(value = "name", required = false) String name, @RequestParam(value = "age", required = true) String age) {
  //age参数必须传 ,name可传可不传
  ...
  }

5、@PathVariable

该注解主要是用于做动态绑定使用,让形参的值变成可供使用的URL变量,多用在 Restful 风格中。

@RequestMapping(value="/hello/{name}",method=RequestMethod.GET)
public String findPet(@PathVariable String name) {
//使用@PathVariable注解绑定 {name} 到String name
}

@PathVariable中的参数可以是任意的简单类型,如int、long、Date等,Spring会自动将其转换成合适的类型或者抛出TypeMismatchException异常,也可以注册支持额外的数据类型。

另外,它也支持正则表达式,这就决定了它超强的属性,它能在路径模板中使用占位符,可以设定特定的前缀匹配和后缀匹配,自定义格式等。

6、@RequestBody

该注解是指方法形参应该被绑定到HTTP请求的Body上。

@RequestMapping(value = "/something", method = RequestMethod.PUT)
public void handle(@RequestBody User user){
   //可以绑定自定义的对象类型
}

JavaWeb中常用的请求传参注解有哪些

使用 @RequestBody 注解

@RequestBody 注解是用于接收请求的 Content-Type为application/json 类型的请求,数据类型是 JSON。

JavaWeb中常用的请求传参注解有哪些

不使用 @RequestBody 注解

不使用 @RequestBody 注解时,可以接收 Content-Type为application/x-www-form-urlencoded 类型,或者 Text 类型的请求所提交的数据,数据格式:

aaa=111&bbb=222  

1)form 表单提交以及用 Ajax 提交数据时方法所发送的请求就是这种类型。

2)后台只需用具有对应属性 id 和 name 的对象接收就行。

JavaWeb中常用的请求传参注解有哪些

如果使用了 @RequestBody 来强行接收 Text 或者 application/x-www-form-urlencoded 类型,会报类型 not supported 的如下错误:

JavaWeb中常用的请求传参注解有哪些

到此,关于“JavaWeb中常用的请求传参注解有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. JavaWeb中怎么使用Filter和Listener
  2. javaWeb怎么实现随机图片验证码

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

javaweb

上一篇:怎么使用Flutter StrikeThroughTextAnimation实现文字中划线动画

下一篇:NodeJS创建目录和文件的方法是什么

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》