导航:首页 > 编程语言 > springmvc前台传json

springmvc前台传json

发布时间:2023-12-11 20:28:28

㈠ springmvc接收json格式参数需要什么配置

$("#btSaveTemplate").click(function()

{
// alert($("#templateName").val());
var data = {"info":{"templateName":$("#templateName").val(),"templateNo":"tmp156464"}};
var data2 = {"templateName":$("#templateName").val()};

$.ajax({
type: "get",//使用get/post方法访问后台
dataType: "json",//返回json格式的数据
url: "lotty/add",//要访问的后台地址
data: data,

success: function(msg){//msg为返回的数据,在这里做数据绑定
if(msg == '1'){
alert('操作成功');
location.reload();
}
},
error: function(jqXHR, textStatus, errorThrown) {
alert("error:" + textStatus + " exception:" + errorThrown);
}

});

后台spring确实收到了请求,并且执行了相应的方法,如下:

java代码
@ResponseBody
@RequestMapping(value="/add", method=RequestMethod.GET)
public String doAdd([color=red][b]String info[/b][/color],Model model) throws Exception;

红色粗体的地方,用String接收是null,改用List和HashMap都不行,后来在SPRING的JAR包中,翻到一个MappingJacksonJsonView,尝试了下,还是空值。之后,我在方法里加了HttpServletRequest参数,郁闷的是:request里面的parameter部分为空
我想可能是SPRING注入处理JSON类的地方出错了,但是这个也不太可能。因为我传最基本的纯key-value结构的JSON数据,后台能成功捕获到(我的做法比较笨,前台有多少个key,controller方法里有多少个对应参数的那种)
这是我SPRING的相关配置:
Java代码
<bean id="" class="org.springframework.http.converter.json."/>

然后注入:
Java代码
<bean class="org.springframework.web.servlet.mvc.annotation.">

<property name="messageConverters">
<list>
<ref local=""/>
</list>
</property>
</bean>

到此,实在不知道其他的解决方法了。
我的想法是,在实际应用中如果做批量插入的话,可以一次提交一个大的JSON数据,在后台里解析成JSONObject对象,再逐步取值。试了大半天,没有结果,上来问问大家,SPRING3里面JSON做参数的一些经验。
问题补充:
amcucn 写道
简单点的方法以就是直接将你要传的json数据当成一个字符串提交到后台,后台使用JSONObject相关的方法 可以直接转成对应的MAP对象。然后你就可以处理了。大致的想法就是绕过springmvc本身的json处理类,把你想的"JSON"当成字符串传到后台。

也只能这样,看来SPRING3.0.5并没有能够很好的集成JSONObject的解决方案,只是死板地提供了参数对应和VO去封装JSON信息。

㈡ spring MVC 怎么获取前端传递的数组参数

spring MVC controller获取前端传递的数组参数的方法是进行封装json字符串实现的。
1、jsp页面中的数组创建如下:
var myArray = []; 定义数组myArray
myArray .push("OU=Software,DC=example,DC=com,"); 向数组中添加第一个字符串
myArray .push("OU=IT,DC=example,DC=com,");向数组中添加第二个字符串
转换json数组:
myArray = JSON.stringify(myArray ); 利用json的stringify方法把js对象转换成json对象
$("#ADOus").attr("action","${ctx}/ADSetting?myOUsArray ="+ myArray );设置action参数
$("#ADOus").submit();提交action到对应的controller

2、在controller层的处理如下:
@RequestMapping(value = { "/ADSetting" }, method=RequestMethod.POST) 定义url和提交方法,规定post
public String configureOUs(HttpServletRequest request,@RequestParam("myOUsArray ") String[] myOUsArray ){
ObjectMapper mapper = new ObjectMapper(); //创建对象映射对象
String [] array = mapper.readValue(jsonString, String[].class): //从映射域中读取数组参数,以json 字符串的方式
接下来需要把接收到的参数转换成json对象来处理。
return 定义的页面
}

㈢ 服务端是springMVC框架的 我把json传过去之后服务端应该怎么接收和返回,下面是android写的发送json

你是想传送对象吗?不论json还是其它格式的在服务端都以字符直接接收,接收完版可以自行转换成权对象或者json,下面图片里面就是自行转换成一个实体对象,如过是对象也很简单,直接用@RequestBody接收即可,

㈣ 后台是java springmvc用前端怎么用json数据格式实现js跨域请求

参数用param = {"key1":"value1","key2":"value2"};
$.ajax({
type : "post",
dataType : "json",
data : param,
url : action,//请求
success : function(data){
alert("成功");
},
error : function(){
alert("失败");
}
});
这样就可以了

㈤ jquery如何上传包含包含JSON数组的参数,spring-mvc框架如何接受

后台解析ajax传递的数据,这主要看前端传递数据的格式,主要有以下几种常见的。
1、前端ajax传递表单数据,类似{name:'zhangsan',age:'17'}
后台只需利用request.getParameter("name")形式即可获取对应的value值。
2、前端传递json数据格式。后台可以直接获取json字符串,然后利用相关的API转成对应的Java对象。或者直接利用springMvc的注解@RequestBody注解。
@RequestMapping(value = "/save")
public void save(@RequestBody User user){

}
这样传递的json数据会自动封装成user对象。
如果当前传递的是一个json数组,则后端可以定义一个VO对象,vo对象中存放一个userList。
public class UserVO{
private List<User> dataList;

}
@RequestMapping(value = "/save")
public void save(@RequestBody UserVO userVO){

阅读全文

与springmvc前台传json相关的资料

热点内容
电脑没联网怎么拷贝文件 浏览:224
wps工具栏怎么换成中文 浏览:338
win7和xp共享文件 浏览:883
苹果4代音量键没反应 浏览:827
怎样打开tif文件 浏览:153
java下载文件zip 浏览:440
qq浏览器压缩文件怎么设密码 浏览:526
黄埔数控编程哪里好 浏览:406
mac109升级1010 浏览:691
在java的菜单如何导入文件 浏览:982
现在什么网站销量最高 浏览:760
angularjsclass定义 浏览:157
ug数控编程怎么导出程序 浏览:466
cmdb文件 浏览:710
鹎文件夹 浏览:763
网络舆情应对的基本理念是什么 浏览:433
word2007层次结构 浏览:456
去掉文件名的数字 浏览:713
word公司 浏览:710
淘宝店数据包怎么上传 浏览:341

友情链接