springboot封装请求参数json的源码解析

源码位置:

java 复制代码
org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver#readWithMessageConverters(org.springframework.http.HttpInputMessage, org.springframework.core.MethodParameter, java.lang.reflect.Type)

在下面的方法中,使用了MappingJackson2HttpMessageConverter来对前端传过来的json做类型转换,在转换前后可以做一些aop的业务处理,比如参数的加解密

从下图中可以看到把json对象封装成了java.util.List<xx.req.QuestionnaireReq>对象

具体的转换是在AbstractJackson2HttpMessageConverter的read方法中

由于我们使用的charset=UTF-8,所用使用objectMapper进行对象转换

ObjectMapper的用法

RequestBodyAdvice的用法

相关推荐
G皮T1 分钟前
【MyBatis】MyBatis 理论 40 问(二)
java·数据库·spring boot·spring·mybatis·关系映射
续亮~30 分钟前
6、Redis系统-数据结构-06-跳表
java·数据结构·数据库·redis·后端·缓存
@Zeal1 小时前
day01:项目概述,环境搭建
spring boot·jwt·lombok
kinlon.liu1 小时前
基于 Nginx + Spring Boot + Vue + JPA 的网站安全防护指南
网络·vue.js·spring boot·nginx·安全
五敷有你1 小时前
Go:hello world
开发语言·后端·golang
拔剑纵狂歌1 小时前
Golang异常处理机制
开发语言·后端·golang·go
码农小野2 小时前
基于Vue.js和SpringBoot的地方美食分享网站系统设计与实现
vue.js·spring boot·美食
缘友一世2 小时前
Armbian 1panel面板工具箱中FTP服务无法正常启动的解决方法
linux·运维·后端·1panel
weixin_419349792 小时前
flask使用定时任务flask_apscheduler(APScheduler)
后端·python·flask
乐之者v2 小时前
Spring之 IoC、BeanFactory、ApplicationContext
java·后端·spring