个人主页:兜里有颗棉花糖
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创
收录于专栏【Spring MVC】
本专栏旨在分享学习Spring MVC的一点学习心得,欢迎大家在评论区交流讨论💌
举栗:
举栗子1:
传递的参数必须和RequestParam注解修饰的参数相同,将这个参数称之为必传参数。
可以使用required = false将RequestParam注解修饰的参数设置为非必传参数。
请求中,同一个参数有多个时,浏览器会帮我们封装成一个数组。
元素之间也可以使用,进行分割:
解释:在使用Spring MVC框架处理请求时默认会将请求参数当作单个的字符串值进行处理,而不会自动解析成集合。通过显式地指定@RequestParam注解,并将参数名与集合类型进行匹配,可以让框架正确解析请求参数,并将其转换成对应的集合对象。
json是一个轻量级键值对形式的数据交互格式,本质是字符串(可以用来表示对象的字符串,通常称之为json字符串)。
在使用Spring MVC框架处理请求时,当请求的数据为JSON格式时,需要使用@RequestBody注解来指定该参数。
如果不添加 @RequestBody 注解,框架会默认将请求体解析为表单形式,即Content-Type为application/x-www-form-urlencoded或multipart/form-data的数据。而使用@RequestBody注解后,框架会将请求体中的数据解析为JSON格式,并绑定到方法参数上。此时就能直接获取到解析后的 Java 对象,而无需手动进行JSON的解析与转换。
举栗:
总代码如下:
package org.example.demo1.demos.web.controller; import org.example.demo1.demos.web.Person; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.Arrays; import java.util.List; @RequestMapping("/param") @RestController public class ParamController { @RequestMapping("/m1") public String m1(String name,Integer age) { return "普通参数的传递:name->" + name + " age->" + age; } @RequestMapping("/m2") public String m2(Person person) { return "对象参数的传递:person-> " + person.toString(); } @RequestMapping("/m3") public String m3(@RequestParam(value = "name",required = false) String username, Integer age) { return "普通参数的传递:name->" + username + " age->" + age; } @RequestMapping("/m4") public String m4(String[] arrayParam) { return "数组传递参数:arrayParam-> " + Arrays.toString(arrayParam); } @RequestMapping("/m5") public String m5(@RequestParam ListlistParam) { return "集合传递参数:listParam-> " + listParam; } @RequestMapping("/m6") public String m6(@RequestBody Person person) { return "接收的数据person:-> " + person.toString(); } }
好了,以上就是本文的全部内容了。希望各位友友可以一键三连哈!!!