码迷,mamicode.com
首页 > 编程语言 > 详细

springMVC接受ajax提交表单,json数据的两种方式

时间:2016-05-10 23:48:02      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:springmvc   互联网   json   ajax   

作为一个初入互联网行业的小鑫鑫,在使用springMVC时发现一个好耍的东西,决定记下来,免得哪天忘了,哈哈

第一种

序列化表单,将表单数据序列化为json对象字符串

	$("#submit").click(function (){
		var form=$("form").serializeArray();
		$.ajax({
			url:"${pageContext.request.contextPath}/teacher/updateTeacher",
			data:form,
			type:"POST",
			dataType : "json",
			error : function(data) {
				alert("修改成功");
				location.reload();
			}
		});
	});

对应的springMVC要这样接手数据就可以了

@RequestMapping(value="updateTeacher")
	@ResponseBody
	public String updateTeacher(Teacher teacher,Model model){
		teacherService.updateByPrimaryKeySelective(teacher);
		Teacher longinTeacher = teacherService.loginExp(teacher);
		model.addAttribute("loginteacher", longinTeacher);
		return "success";
	}

第二种

构建json对象

                        var zdgzs=[];
   			//获取页面所有的数据,组装json对象
  			for(var i=0;i<qtcsId.length;i++){
  				var zdgz={
   			"zdgzNd" :zdgzNd,
   			"rwlyValue" :rwlyValue,
   			"rwlyName" :rwlyName,
   			"lwwh" :lwwh,
   			"lwbt" :lwbt,
   			"qtcsId" :qtcsId.eq(i).val(),
  			"qtcsName" :qtcsName.eq(i).html(),
   			"phcsId" :[phcsId.eq(i).val()],
   			"phcsName" :[phcsName.eq(i).html()],
   			"rwnr" :rwnr.eq(i).val()
   			}; 
   			zdgzs.push(zdgz);
   			}

再次一个zdgz对象的数据就构建好了

ajax传用JSON.stringify(zdgzs)转换下数据,设置传入后台的数据类型为json

$.ajax({
			type: "POST",
			url: "${pageContext.request.contextPath}/zdgz/addzdgz.do",
			contentType: "application/json; charset=utf-8",
			data:JSON.stringify(zdgzs),
			dataType: "json",
			success: function (message) {
			if (message > 0) {
			alert("添加成功");
			window.location.href="${pageContext.request.contextPath}/zdgz1/selectzdgz.do/s/0";
			}

后台接收方式,使用springMVC中的@requsetBody 注解来控制参数类型,强大的springMVC就能把前台的json数据自动装配成对应对象的List数组了(需要加springMVC中带的json包)

	@RequestMapping(value="/addzdgz.do",method = RequestMethod.POST)
	public @ResponseBody int addzdgz(@RequestBody List<Zdgz> zdgzs){
		for(Zdgz zdgz:zdgzs){
			if ("请选择".equals(zdgz.getRwlyName()) || "请选择".equals(zdgz.getQtcsName())
					|| "请选择".equals(zdgz.getPhcsName()) || "".equals(zdgz.getRwnr()) || null == zdgz.getRwnr()) {
				return 0;
			}
			
			zdgz.setDtmdjsj(new Date());	
			zdgzService.addZdgz(zdgz);
		}
		return 1;
	}

ok,这个写完了,以后自己没事可以看看

本文出自 “自娱自乐的剥壳” 博客,请务必保留此出处http://10709011.blog.51cto.com/10699011/1771972

springMVC接受ajax提交表单,json数据的两种方式

标签:springmvc   互联网   json   ajax   

原文地址:http://10709011.blog.51cto.com/10699011/1771972

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!