springmvc json参数

news/2025/2/21 2:45:11/

1、springmvc 接收参数可以绑定简单类型也可以绑定复杂对象类型:

@RequestMapping(value="/getDetailByGoodsNo", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})@ResponseBodypublic String getDetailByGoodsNo(HttpServletRequest request, HttpServletResponse response,HttpSession session,@RequestParam(value = "visitid") String visitid, Model model){
上面可以返回json字符串。也可以把@ResponseBody去掉,这样就返回视图界面。

2、复杂对象参数

@RequestMapping(value="/getBrandManageByEntity")@ResponseBodypublic String getBrandinfoListByEntity(BrandManageView entity, Model model){
BrandManageView 是一个复杂对象

前台js必须构造一个复杂对象的参数

data		:	{'brandname':$('#brandname').val(),'brandinfo.brandname':$('#brandname').val(),'brandinfoList[0].brandname':$('#brandname').val()},

3、构造简单对象是够了,如果前台是grid编辑数据。参数就比较复杂采用 接受json字符串,然后后面解析接收到的json字符串。springmvc默认已经可以处理了

@RequestMapping(value="/getBrandManageByEntity")@ResponseBody
//	public String getBrandinfoListByEntity(BrandManageView entity, Model model){public String getBrandinfoListByEntity(@RequestBody BrandManageView entity, Model model){
接受json字符串参数后台使用@RequestBody可以直接把接受到的json字符串转换成java对象

但是前台的contentType必须是json格式 默认的是application/x-www-form-urlencoded(此处是重点,一直卡在HTTP 415 错误 – 不支持的媒体类型(Unsupported media type))

var entity = {};entity.brandname = $('#brandname').val();entity.brandinfo = {};entity.brandinfo.brandname=$('#brandname').val();entity.brandinfoList = [];var info={};info.brandname = $('#brandname').val();entity.brandinfoList.push(info);console.log("输入"+JSON.stringify(entity));//将js对象转换成json字符串console.log("输入"+JSON.parse(JSON.stringify(entity)).brandname);//将json字符串转换成js对象 

首先构造一个页面参数 js对象。

设置参数类型

                        data		:	JSON.stringify(entity),//发送到服务器的数据。//将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。//查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。//如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'。dataType	:	"json",//返回 JSON 数据 contentType	:	"application/json",//发送信息至服务器时内容编码类型。 默认值: "application/x-www-form-urlencoded"。
注意:contentType 类型,不然就是415




http://www.ppmy.cn/news/651568.html

相关文章

SpringMVC -- 获得请求参数(@RequestBody)基本类型参数、POJO类型参数、数组类型参数、集合类型参数(POJO、ajax)

文章目录 1. 获得请求参数1.1 获得基本类型参数1.2 获得POJO类型参数1.3 获得数组类型参数1.4 获得集合类型参数1.4.1 获得集合参数时 要将集合参数包装到POJO1.4.2 ajax提交 1. 获得请求参数 1.1 获得基本类型参数 代码: 后端接口: 前端页面&#xff1…

postman文件参数化(json/csv)

一,json参数化 1,将请求报文的字段值改成变量取值 2,创建json文件 3,打开请求集合的Runner上传json文件并查看字段参数 4,查看请求的结果 二,CVS参数化(与json的区别在于文件内容格式不一样&a…

jsonp介绍

为什么要知道jsonp,jsonp的作用是什么: Jsonp(JSON with Padding) 是 json 的一种"使用模式",可以让网页从别的域名(网站)获取资料,即跨域读取数据。原则上浏览器是不允许请求不同域名的数据的&…

Baumer工业相机堡盟工业相机如何通过BGAPI SDK获取一种偏振格式(AOP、DOLP或ADOLP)的图像(C++)

Baumer工业相机堡盟工业相机如何通过BGAPI SDK一种偏振格式(AOP、DOLP或ADOLP)的图像(C) Baumer工业相机Baumer工业相机的偏振相机的技术背景Baumer工业相机通过BGAPI SDK在获取一种偏振格式(AOP、DOLP或ADOLP&#xf…

python pytest失败用例重新执行

python pytest自动化测试时,失败用例重跑,可以采用pytest的库rerunsfailurs 安装步骤: 1. pip install pytest-rerunsfailures 2.如果需要html的测试报告,需要安装 pip instal pytest-html 三种方式: 1、在python自动…

WIN10-22H2专业版_电脑维修人员专用装机系统镜像【04.20更新】

WIN10-22H2专业版是由站长亲自封装的电脑维修人员专用装机系统镜像,系统干净无广告,稳定长效不卡顿,适合电脑维修店用来维修电脑重装系统。此版本是WIN10系统里非常稳定的正式版本之一,适合在维修电脑时重装系统或者大批量装机使用…

方正品牌机系统安装指南

方正品牌机系统安装指南 <?xml:namespace prefix st1 ns "urn:schemas-microsoft-com:office:smarttags" />01/05/23<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /> A600-4E27为例 放入系统引导光盘 一、设…

方正电脑XP GHOST恢复盘(家庭版)

方正电脑XP GHOST恢复盘(家庭版)(维修站专版) 方正电脑XP GHOST恢复盘 采用死性不改大侠的SRS9.6以及雨林木风的DLL恢复工具封装,系统补丁更新至07.11.14,集成WINRAR3.70,MSN8.0,WMP11,未集成其他软件,保证原汁原味,非方正的机器需要在DMI里添加Founder PC,本光盘已集成,并加入…