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的用法

相关推荐
星释3 小时前
Rust 练习册 :Leap与日期计算
开发语言·后端·rust
Q_Q5110082855 小时前
python+django/flask的眼科患者随访管理系统 AI智能模型
spring boot·python·django·flask·node.js·php
码事漫谈7 小时前
C++死锁深度解析:从成因到预防与避免
后端
码事漫谈7 小时前
智能体颠覆教育行业:现状、应用与未来展望调研报告
后端
蓝-萧7 小时前
【玩转全栈】----Django基本配置和介绍
java·后端
priority_key7 小时前
排序算法:堆排序、快速排序、归并排序
java·后端·算法·排序算法·归并排序·堆排序·快速排序
韩立学长7 小时前
基于Springboot的旧时月历史论坛4099k6s9(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·后端
Q_Q5110082857 小时前
python+django/flask的在线学习系统的设计与实现 积分兑换礼物
spring boot·python·django·flask·node.js·php
Q_Q5110082858 小时前
python+django/flask的车辆尾气检测排放系统-可视化大屏展示
spring boot·python·django·flask·node.js·php
汤姆yu8 小时前
基于SpringBoot的动漫周边商场系统的设计与开发
java·spring boot·后端