🍅 作者简介:哪吒,优快云2021博客之星亚军🏆、新星计划导师✌、博客专家💪
🍅 哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师
🍅 关注公众号【哪吒编程】,回复1024,获取Java学习路线思维导图、大厂面试真题、加入万粉计划交流群、一起学习进步
目录
三、@RequestParam和@ModelAttribute的区别
一、@RequestParam
@PostMapping("/getUserLogin")
public String getUserLogin(@RequestParam("username") String username,
@RequestParam("password") String password) {
selectByCond(username,password);
}
注:如果参数前写了@RequestParam(xxx),那么前端必须有对应的xxx名字才行(不管其是否有值,当然可以通过设置该注解的required属性来调节是否必须传),如果没有xxx名的话,那么请求会出错,报400。
注:如果参数前不写@RequestParam(xxx)的话,那么就前端可以有可以没有对应的xxx名字才行,如果有xxx名的话,那么就会自动匹配;没有的话,请求也能正确发送。
追注:这里与feign消费服务时不同;feign消费服务时,如果参数前什么也不写,那么会被默认是@RequestBody的。
当同时使用@RequestParam()和@RequestBody时,@RequestParam()指定的参数可以是普通元素、数组、集合、对象等等
二、@ModelAttribute
@PostMapping(
本文详细介绍了Spring MVC中@RequestParam、@ModelAttribute和@RequestBody的区别。@RequestParam用于读取请求参数,@ModelAttribute用于绑定整个Java对象,@RequestBody则用于接收JSON格式的请求体数据。文章通过实例分析了它们的使用场景和核心逻辑,帮助开发者更好地理解和应用这些注解。
订阅专栏 解锁全文
806





