关于Axios传json对象给后端,后端将json在转换为pojo对象,
Controller使用@ResquestParam注解,形参并不直接写pojo对象,而是Map< String,Object>对象,然后使用其get(“key”)方法得到前端作为url参数传递过来的json格式的object对象,使用toString转化为字符串后,利用第三方架包fastjson的JSON.ParseObject()将字符串转成后端直接使用的pojo对象
我用的时fastjson来实现转换格式的,获取json数据,再将json转为pojo
前端
发送请求
JSON.stringify(this.form)为将对象转换为json对象
const _this= this; console.log('submit!'); console.log(_this.form); this.$axios({ method: 'post', url: 'http://localhost:8090/addDepartmente', data: qs.stringify({ // 1 form: JSON.stringify(this.form) }) })
后端
导入依赖
<!-- fastjson--> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>2.0.1</version> </dependency>
controller
@RequestMapping(value = "/addDepartmente", method = RequestMethod.POST) public void addDepartmente(@RequestParam Map<String, Object> param) { // 2 // get("key")方法得到前端作为url参数传递过来的json格式的object对象 Object o = param.get("form"); // toString转成字符串 String DepartmentStr = o.toString(); System.err.println(DepartmentStr); // 三方架包fastjson转pojo对象 department department = JSON.parseObject(DepartmentStr, department.class); // 对象使用 System.err.println(department); departmentService.addDepartment(department); }
当然还有其他方法可以实现,转换格式
(5条消息) Axios使用Post向Spring传递POJO对象的三种方法(@RequestBody与@RequestParam注解)_莉妮可丝的猫的博客-CSDN博客_axios post传对象
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决