- 在SpringMVC配置类中添加JSON类型转换注解
package com.itheima.config;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.web.filter.CharacterEncodingFilter;import org.springframework.web.servlet.config.annotation.EnableWebMvc;import javax.servlet.Filter;import javax.servlet.annotation.WebFilter;@Configuration@ComponentScan("com.itheima.controller")//开启json数据类型自动转换@EnableWebMvcpublic class SpringMvcConfig {}
- 在Controller中书写相关Web代码(注意:需要使用@RequestBody表示将请求体数据传递给请求参数)
package com.itheima.controller;import com.itheima.domain.User;import org.springframework.format.annotation.DateTimeFormat;import org.springframework.stereotype.Controller;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.ResponseBody;import java.util.Arrays;import java.util.Date;import java.util.List;//请求参数@Controllerpublic class UserController {//集合参数:json格式//1.开启json数据格式的自动转换,在配置类中开启@EnableWebMvc//2.使用@RequestBody注解将外部传递的json数组数据映射到形参的集合对象中作为数据@RequestMapping("/listParamForJson")@ResponseBodypublic String listParamForJson(@RequestBody List<String> likes){System.out.println("list common(json)参数传递 list ==> "+likes);return "{'module':'list common for json param'}";}//POJO参数:json格式//1.开启json数据格式的自动转换,在配置类中开启@EnableWebMvc//2.使用@RequestBody注解将外部传递的json数据映射到形参的实体类对象中,要求属性名称一一对应@RequestMapping("/pojoParamForJson")@ResponseBodypublic String pojoParamForJson(@RequestBody User user){System.out.println("pojo(json)参数传递 user ==> "+user);return "{'module':'pojo for json param'}";}//集合参数:json格式//1.开启json数据格式的自动转换,在配置类中开启@EnableWebMvc//2.使用@RequestBody注解将外部传递的json数组数据映射到形参的保存实体类对象的集合对象中,要求属性名称一一对应@RequestMapping("/listPojoParamForJson")@ResponseBodypublic String listPojoParamForJson(@RequestBody List<User> list){System.out.println("list pojo(json)参数传递 list ==> "+list);return "{'module':'list pojo for json param'}";}}
Postman操作:
文章插图

文章插图

文章插图
在上面我们有两个注解需要特别注意一下:
- @EnableWebMvc
- 名称:@EnableWebMvc
- 类型:配置类注解
- 位置:SpringMVC配置类定义上方
- 作用:开启SpringMVC多项辅助功能
- @RequestBody
- 名称:@RequestBody
- 类型:形参注解
- 位置:SpringMVC控制器方法形参定义前面
- 作用:将请求中请求体所包含的数据传递给请求参数,此注解一个处理器方法只能使用一次
@RequestBody和@RequestParam区别日期型参数类型我们的日期类型数据基于系统不同格式也不相同,大致有以下几种:
- 区别
- @RequestParam用于接收url地址传参,表单传参[application/x-www-form-urlencoded]
- @RequestBody用于接收JSON数据[application/json]
- 应用
- 后期开发中,发送json数据为主,@RequestBody应用较广
- 如果发送非json格式数据,选用@RequestParam接收请求参数
- 2022-10-05
- 2022/10/05
- 10/05/2022
package com.itheima.controller;import com.itheima.domain.User;import org.springframework.format.annotation.DateTimeFormat;import org.springframework.stereotype.Controller;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.ResponseBody;import java.util.Arrays;import java.util.Date;import java.util.List;//请求参数@Controllerpublic class UserController {//日期参数//使用@DateTimeFormat注解设置日期类型数据格式 , 默认格式yyyy/MM/dd@RequestMapping("/dataParam")@ResponseBodypublic String dataParam(Date date,@DateTimeFormat(pattern="yyyy-MM-dd") Date date1,@DateTimeFormat(pattern="yyyy/MM/dd HH:mm:ss") Date date2){System.out.println("参数传递 date ==> "+date);System.out.println("参数传递 date1(yyyy-MM-dd) ==> "+date1);System.out.println("参数传递 date2(yyyy/MM/dd HH:mm:ss) ==> "+date2);return "{'module':'data param'}";}}/*名称:@DateTimeFormat类型:形参注解位置:SpringMVC控制器方法前作用:设定日期时间型数据格式属性:pattern:日期时间格式字符串*/
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 火山视频怎么挣钱的(火山挣钱还是抖音挣钱)
- 第一篇 TTD 专题 :C# 那些短命线程都在干什么?
- 火山小视频怎么赚钱(玩火山怎么赚钱)
- 怎么用支付宝花呗付款(支付宝花呗付款码限额)
- 花呗如何用(花呗的使用方式)
- 怎样使用花呗(花呗12期能一次全还吗)
- 1+volte怎么关闭(怎么关闭volte通话)
- 高清视频通话怎么关闭(红米怎么关闭高清通话)
- 耳机界四大王牌厂商大盘点 耳机四大厂
- 移动volte怎么关闭(怎么取消volte功能)