前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring @PostMapping 能在 URL 中带有参数吗

Spring @PostMapping 能在 URL 中带有参数吗

原创
作者头像
HoneyMoose
发布2022-09-11 22:06:21
3740
发布2022-09-11 22:06:21
举报
文章被收录于专栏:CWIKIUSCWIKIUS

有个比较简单的问题。

Spring 的 @PostMapping 在使用 POST 提交的时候,能不能在 URL 中带参数?

简答

短回答肯定是可以的。

在非常早期的 Web 开发的时候,我们会通过网页的 JSP 来提交表单,在这个表单提交的时候,有一个非常困惑的问题就是如果不指定 POST 的提交参数。

所有的表单数据都会拼装成 URL 中参数来进行提交。

所以 POST 是肯定可以带参数的。

Spring RestController

在 Spring 的 RestController 写法也非常简单。

就和 Get 获得参数的方法是一样的。

代码语言:javascript
复制
    @PostMapping("/search")
    @ResponseBody
    public ResponseEntity<?> searchVisa(@RequestBody(required = false) String searchPayload, @RequestParam(value = "p", required = false) Integer pageNumber) {


}

上面的代码就可以从 URL 获得请求参数 p。

URL 也可以使用非常简单的参数模式。

/visa/search?p=0

通过上面的代码,在你的控制层中,就可以获得 p 传递给程序的数据了。

2022-09-11_09-55-27
2022-09-11_09-55-27

因为我们将 p 定义成整形,Spring 也非常贴心的给我们做了类型校验。

如果你传入的数据是字符的话,这里会抛出一个异常。

2022-09-11_09-55-00
2022-09-11_09-55-00

这个错误就是类型转换错误。

https://www.ossez.com/t/spring-postmapping-url/14095

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简答
    • Spring RestController
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档