SpringBoot用实体接收Get请求传递过来的多个参数的两种方式
最近项目中Controller层查询接口需要通过实体来接受前端传过来的多个参数(Get请求),这个问题困扰了我很久,之前在第二家公司的时候,就因为我后端是Get请求,并且是通过实体去接收前端参数的,导致我当天上线搞到半夜没搞好,这次又遇到,势必解决它。
一年前,通过查看大量的坑爹文章,发现网上没有一篇有效的,这次通过阿里主管的协助,成功的通过实体接收到了Get请求传递过来的参数,而且是发现了两种方法。
一、Controller层不带任何注解接收参数
第一种方法是最简单的,严重怀疑以前怎么没有用,谁知道呢。。不过这次是真的管用了,最简单的方式就是Controller接口入参不加任何注解!!!SpringBoot自动做了处理。代码如下:
/** * @author zhangzhixiang * @since v1.0.0 */ @RestController @RequestMapping(path = "/ui/institution") public class InstitutionManagementController { @GetMapping(value = "/pageQueryForAssign") public void pageQueryInstitutionsForAssign(InstitutionQueryDTO queryDTO) { } }
其实重点就是InstitutionQueryDTO旁边没有任何注解,这样前端正常传Get参数就好,前端传参格式示例如下:
http://192.168.63.125/ui/institution/pageQueryForAssign?name='xxx'&sex='男'
这里的name和sex是InstitutionQueryDTO实体中的属性,SpringBoot会帮我们自动填充到实体中。
二、Controller层通过@ModelAttribute接收参数
这个写法是在网上阅读文章找到的,这种方法我也记录一下。
/** * @author zhangzhixiang * @since v1.0.0 */ @RestController @RequestMapping(path = "/ui/institution") public class InstitutionManagementController { @GetMapping(value = "/test") public void test(@ModelAttribute InstitutionQueryDTO queryDTO){ } }
这里的重点是@ModelAttribute注解,他也会将前端传过来的参数填充到业务实体中,前端传参格式与方法一相同。
我一年前应该也有通过第一种方式来接受Get请求的参数,但是失败了没有接收到,我失败的原因应该是我的Controller同时接收多个实体入参,所以失败了。
到此这篇关于SpringBoot用实体接收Get请求传递过来的多个参数的两种方式的文章就介绍到这了,更多相关SpringBoot实体接收Get请求内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
解析Spring中@Controller@Service等线程安全问题
这篇文章主要为大家介绍解析了Spring中@Controller@Service等线程的安全问题,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-03-03Spring mvc Controller和RestFul原理解析
这篇文章主要介绍了Spring mvc Controller和RestFul原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-03-03SpringBoot中@RestControllerAdvice @ExceptionHandler异常统一处
这篇文章主要介绍了SpringBoot中@RestControllerAdvice @ExceptionHandler异常统一处理类失效原因,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-01-01JSON序列化导致Long类型被搞成Integer的坑及解决
这篇文章主要介绍了JSON序列化导致Long类型被搞成Integer的坑及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-01-01Idea安装bpmn插件actiBPM的详细过程(解决高版本无法安装actiBPM插件)
这篇文章主要介绍了Idea安装bpmn插件actiBPM的详细过程(解决高版本无法安装actiBPM插件)的问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-01-01
最新评论