SpringMVC与Ajax交互
1 springmvc和ajax的交互
1.1 请求字符串响应json
客户端发送的数据:key=value&key1=value1
响应回来:json
1.1.1json的支持jar包

1.1.2建立Handler处理器
package org.guangsoft.controller; import java.util.ArrayList;
import java.util.List; import org.guangsoft.pojo.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody; @Controller
public class UserHandler
{
//responseBody将返回值转化为json格式响应到客户端
//requestBody将请求数据转化为json对象
@RequestMapping("/checkUsername")
public @ResponseBody List<User> CheckUsername(User user)
{
System.out.println(user.getUsername());
List<User> userList = new ArrayList<User>();
User user0 = new User();
user0.setUsername("java");
User user1 = new User();
user1.setUsername("javase");
User user2 = new User();
user2.setUsername("javaee");
//对象加入集合
userList.add(user0);
userList.add(user1);
userList.add(user2);
return userList;
} @RequestMapping("/checkUsername2")
public @ResponseBody List<User> CheckUsername2(@RequestBody User user)
{
System.out.println(user.getUsername());
List<User> userList = new ArrayList<User>();
User user0 = new User();
user0.setUsername("java");
User user1 = new User();
user1.setUsername("javase");
User user2 = new User();
user2.setUsername("javaee");
//对象加入集合
userList.add(user0);
userList.add(user1);
userList.add(user2);
return userList;
}
}
1.1.3完成ajax发送请求

备注:springmvc ajax,响应json406错误,使用json相关jar包2.4以上版本。
function sendAjax()
{
var username = $("#username").val();
var age = $("#age").val();
var div = $("#showDiv");
$.ajax(
{
url:"checkUsername.action",
data:{"username":username,"age":age},
type:"post",
dataType:"json",
success:function(data)
{
var jsons = data;
div.html("");
for(var i = 0; i < jsons.length; i++)
{
div.append("<div>"+jsons[i].username+"</div>");
}
}
});
}
1.2请求json响应json
客户端发送的数据:{key:value,key1:value1}

响应回来:json
1.2.1 建立服务器端Handler
见上
1.2.2客户端发生ajax请求
function sendAjax2()
{
var username = $("#username").val();
var age = $("#age").val();
var div = $("#showDiv");
$.ajax(
{
url:"checkUsername2.action",
type:"post",
data:'{"username":"username","age":"4"}',
contentType:"application/json;charset=utf-8",
dataType:"json",
success:function(data)
{
var jsons = data;
div.html("");
for(var i = 0; i < jsons.length; i++)
{
div.append("<div>"+jsons[i].username+"</div>");
}
}
});
}
2url跳转
Model封装数据的范围request范围,只有请求转发才能获取
如果是重定向变为url传参。
Return “forward:url”:请求转发
Return “redirect:url”重定向
SpringMVC与Ajax交互的更多相关文章
- SpringMVC和AJAX交互
在实际开发中我们经常需要前后台交互,那么springmvc与ajax之间交互这里记录下在实际开发中遇到的细节问题. jsp页面: <fieldset id="login" s ...
- springmvc与ajax交互常见问题
这是我个人再编写博客系统的时候,因个人疏忽犯下的低级错误. 不过犯错是一件好事,有助于总结. 1.关于参数前加@RequestBody 如果是使用ajax交互时,必须要加上这个contentType: ...
- content-type常见类型辨析(以ajax与springmvc前后端交互为例)
博客搬家: content-type常见类型辨析(以ajax与springmvc前后端交互为例) 在http报文的首部中,有一个字段Content-type,表示请求体(entity body)中的数 ...
- springMvc 使用ajax上传文件,返回获取的文件数据 附Struts2文件上传
总结一下 springMvc使用ajax文件上传 首先说明一下,以下代码所解决的问题 :前端通过input file 标签获取文件,通过ajax与后端交互,后端获取文件,读取excel文件内容,返回e ...
- springmvc实现json交互 -requestBody和responseBody
json数据交互 1.为什么要进行json数据交互 json数据格式在接口调用中.html页面中较常用,json格式比较简单,解析还比较方便. 比如:webservice接口,传输json数据. 2. ...
- SpringMVC实现AJax以及RestFull风格
RestFull风格就是url路径中不能出现?不能带参数,如https://www.baidu.com/user/item/1234这个格式,也叫url资源定位 1.需要在web.xml中开启put, ...
- ThinkPHP中使用ajaxReturn进行ajax交互
以管理员登录为例来介绍下$this->ajaxReturn与模板页进行ajax交互使用方法 首先看PHP控制器的处理,在application/Admin/Controller/LoginCon ...
- struts2 的验证框架validation如何返回json数据 以方便ajax交互
struts2 的验证框架validation简单,好用,但是input只能输出到jsp页面通过struts2的标签<s:fielderror />才能取出,(EL应该也可以). 如果使 ...
- SpringMVC——对Ajax的处理(包含 JSON 类型)
一.首先要搞明白的一些事情. 1.从客户端来看,需要搞明白: (1)要发送什么样格式的 JSON 数据才能被服务器端的 SpringMVC 很便捷的处理,怎么才能让我们写更少的代码,如何做好 JSON ...
随机推荐
- web响应式图片设计实现
.header { cursor: pointer } p { margin: 3px 6px } th { background: lightblue; width: 20% } table { t ...
- 第一个Android应用--签证无忧 上线
用了大概1个多星期的时间,把一个简单的应用完成,[签证无忧]是基于在我所在公司办理签证的前提下,为方便客户查询进度所开发,后来我加了淘宝的购买链接,这样客人在以后需要时不需要到淘宝查找了. 签证无忧这 ...
- RedHat/Centos修改root密码
Linux主机忘记密码,只要你能接触物理主机都可以修改root密码的! Redhat6.x 5.x / Centos6.x 5.x 01.开机-空格/enter 02.e-编辑模式 CentO ...
- Git和Github简单教程
原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章 ...
- jQuery datatables
jQuery datatables 属性,用例 参考:http://datatables.club/example/ http://blog.csdn.net/mickey_miki/article/ ...
- linux配置java开发环境
一.下载jdk java -version 查看有没有安装jdk 下载对应版本的jdk:jdk-java7u60-linux-x64.tar.gz 二.解压 cp jdk-java7u60-lin ...
- CSS DIV自动适应高度
当div需要设定自适应高度时,可用到的css属性,min-height:200px;代表的是当div的内容超出了200px时,就会自动适应高度,兼容所有浏览器(IE6除外),如果是IE6则需要设置&q ...
- WebService学习总结(四)——调用第三方提供的webService服务
http://www.cnblogs.com/xdp-gacl/p/4260627.html 互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他 ...
- Level Of Management Protocols - SNMP Tutorial
30.2 The Level Of Management Protocols Originally, many wide area networks included management proto ...
- ArcGIS Server开发教程系列(3)切片
切片工作,我们可以一级一级的切,也可以,所有的一块切,Recreate All Tiles这项是说,在没有进行任何的切片工作时,可以选用这项:Recreate Empty Tiles这项是说,如果之前 ...