最后更新日:2014年12月25日
前端:引入JQuery
//如果用①的方式,那么url只要写为'/Test/restApply.do?method=checkRepeat'
//然后加上:
//data={username:username,worknum:worknum,restType:restType};
//jQuery.ajaxSettings.traditional = true;
$.ajax({
url : '/Test/restApply.do?method=checkRepeat&checkValue1='+checkValue1
+'&checkValue2='+checkValue2+'&worknum='+worknum,
type : 'POST',
dataType : 'json',
//data:data,//注①
//表示同步执行,不然是异步执行
async : false,
error : function() {
alert('Operate Failed!');
},
success : function(json) {
//用对象.属性的方式输出出来
alert(json.a);
}
});
后端:引入JSONObject和JSONArray
①将数据放入JSONObject或JSONArray或两者结合
②将JSONObject的数据转为JSONObject.fromObject(jo)
或将JSONArray的数据转为JSONArray.fromObject(ja)
③是JSONObject jo或JSONArray ja
response.setCharacterEncoding("utf-8");
response.setHeader("Cache-Control", "no-cache");
PrintWriter printWriter = response.getWriter();
printWriter.write(jo.toString());//printWriter.write(ja.toString());
注:
A、如果不想用printWriter.write的方式可以写为:
①在方法上加上@ResponseBody注解
②方法返回值由void变为String
③最后将JSONObject的值toString()
B、如果不想用request.getParameter()的方式接受参数可以写为:
①前台变为
dataType : 'json'
data:JSON.stringify(data)
contentType:'application/json'
②后台为
在方法的参数里多加一个注解参数:@RequestBody String rb
但是,有个问题中文会乱码,要处理下!!!
补充:
实体类Person
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
JSON转化为实体bean
import net.sf.json.JSONObject;
public class Test {
public static void main(String[] args) {
/**
1.这个data可能是通过request.getParameter(data)得到的
2.这个request.getParameter(data)中的data来自页面的形式可能为:
var a = "张三";
var b = 35;
var d={name:a,age:b};
jQuery.ajaxSettings.traditional = true;
$.ajax({
url : '/xxx/xxxx?method=xxxxx',
type : 'POST',
dataType : 'json',
data:{data:JSON.stringify(d)},
async : false,
error : function() {
//TODO
},
success : function(json) {
if (json.resultFlag==false){
//TODO
}else{
//TODO
}
}
});
*/
String data = "{\"name\":\"张三\",\"age\":\"35\"}";
JSONObject jo = JSONObject.fromObject(data);
//有时你的data并不是一个实体bean对象,那么就老老实实的:
//jo.get("name");jo.get("age");
Person p = (Person)JSONObject.toBean(jo, Person.class);
System.out.println(p.getName());
System.out.println(p.getAge());
}
}
分享到:
相关推荐
本篇文章主要介绍了jQuery Ajax前后端使用JSON进行交互示例,实现前端通过jQuery Ajax传输json到后端,后端接收json,对json进行处理,后端返回一个json给前端,有兴趣的可以了解一下。
jsp上传图片的示例,把文件保存在服务器和数据库,数据从数据库的获取,可以通过ajax来发送请求来获取,实现自动刷新的功能,实时获取数据库的数据,用json的方式返回给页面
php+ajax+json的简单实例,包含了json的重要语句,有了这个你学习json就容易多了!
jQuery中使用Ajax获取JSON格式数据示例代码,文档的形式了解json的使用!
此示例演示了用 Qt QML 用 ajax 方式获取 json 天气数据,并展示效果 MIT surfsky.cnblogs.com
本文详细总结了ajax和json的使用方法和详细示例。
结合网上的示例,做的ajax分页代码示例,但实现并非是自己写分页对象什么的,而是用SQL语句根据页号选择查找。
jQuery ajax读取json文件内容
很多示例我都下载看了,要么复杂,要么就实现不了。我这个示例是自己亲手写的。新建一个eslipse项目,...示例包括jquery通过ajax获取selvert类中转换的json数据和javascript通过ajax获取selvert类中转换的json数据。
如何使用AJAX返回JSON数据,就是dataType,当你设置json后返回的json字符串传递到客户端就是JSON对象了,示例如下,感兴趣的朋友可以参考下
主要介绍了jQuery基于ajax操作json数据的方法,结合简单实例形式分析了jQuery的ajax基本使用方法及json数据传输操作相关技巧,需要的朋友可以参考下
浅析ajax请求json数据并用js解析(示例分析).docx
ajax后台处理返回json值示例代码.docx
有时候我们需要读取JSON格式的数据文件,在jQuery中可以使用Ajax或者 $.getJSON()方法实现。 下面就使用jQuery读取music.txt文件中的JSON数据格式信息。 首先,music.txt中的内容如下: 代码如下: [ {“optionKey”:...
LINQ,WCF,JSON和AJAX的简单示例。
struts2 + jsonplugin google自动提示 ajax示例
asp.net中利用Jquery+Ajax+Json实现无刷新分页 ,完整示例,带样式,很有参考价值,利用jquery.pagination.js分页
这是一个简单的JSON用AJAX效果取出PHP文件中JSON数据的实例,对理解JSON技术有很的帮助,对于数据处理和调用非常明了,一看就懂.
代码如下:$.ajax({ url: ‘这个地址要换成你自己的’, data: {S_CourseID: courseid , CurrTime : new Date().getTime()}, //加个时间戳,否则会不自动更新数据 dataType: ‘json’, success: function(data) {...