计算机系统应用教程网站

网站首页 > 技术文章 正文

@PostMapping @GetMapping注解 postmapping注解接收参数

btikc 2024-10-13 01:51:23 技术文章 14 ℃ 0 评论

首先要了解一下@RequestMapping注解。

@RequestMapping用于映射url到控制器类的一个特定处理程序方法。可用于方法或者类上面。也就是可以通过url找到对应的方法。

@RequestMapping有8个属性。

value:指定请求的实际地址。

method:指定请求的method类型(GET,POST,PUT,DELETE)等。

consumes:指定处理请求的提交内容类型(Context-Type)。

produces:指定返回的内容类型,还可以设置返回值的字符编码。

params:指定request中必须包含某些参数值,才让该方法处理。

headers:指定request中必须包含某些指定的header值,才让该方法处理请求。

@getMapping与@postMapping是组合注解。

@getMapping = @requestMapping(method = RequestMethod.GET)。

@postMapping = @requestMapping(method = RequestMethod.POST)。

@GetMapping是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。该注解将HTTP Get 映射到 特定的处理方法上。

Difference between @GetMapping & @RequestMapping:

@GetMapping does not support the consumes attribute of @RequestMapping.

SpringBoot 中@GetMapping和@PostMapping测试同一方法,为什么用@Get类型的注解可以访问成功,而@PostMapping用浏览器访问失败

@Controller

public class JspController {

@PostMapping("/index")

public String index(Model model){

model.addAttribute("msg","springboot访问JSP页面");

return "index";

}

}

用@PostMapping注解,在浏览器输入访问地址时,会出现

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Wed Feb 20 09:50:06 CST 2019

There was an unexpected error (type=Method Not Allowed, status=405).

Request method ‘GET’ not supported

而用@GetMapping注解,可以访问成功

通过浏览器的地址栏输入地址,所访问的URL都是get请求,因此如果以post定义方法,那么由于请求与实现的不一致,会返回405错误。

浏览器发送Get请求有

1.直接在地址栏中输入地址

2.点击链接

3.表单默认提交方式

浏览器发送post请求有:

1.将表单的method设置为post

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表