读书人

求指导入门级:JSON的使用有关问题。j

发布时间: 2013-07-08 14:13:00 作者: rapoo

求指导入门级:JSON的使用问题。jquery的使用。
刚入门不久,总是听说json、jquery这两个术语。网上查了些资料:求指导入门级:JSON的使用有关问题。jquery的使用觉得json就是一种存放数据的东西,用它存放后js更容易解析。jquery是个方便产生特效的东西。我想写实例来验证他们。先写个验证json的。我的想法是:
用json定义几个学生类,然后把学生类按年龄从大到小排序后输出到页面。问题是不知道怎么下手:json定义变量是在js中定义还是在java类中定义?jsp页面怎么显示json中的内容?
哪位大侠能给个完整的实例让我学习学习,感激不尽啊 JSON jQuery J2EE Java
[解决办法]

public class student { // bean
private int id;
private String name;
//get & set
...
}
@Controller
public class StudentController {
@requstmapping("/allstudent")
@ModelAttribute("users")
public List<student> getAll() {
List<student> all = new ArrayList<student>();
for ( ...) {
student bean = new student(); //new bean
bean.setid(...); // build bean
bean.setname(...);

all.add(bean);
}
return all; // json
}
}



Ext.define('User', {
extend: 'Ext.data.Model',
fields: [
{name: 'name', type: 'string'},
{name: 'id', type: 'int'}
]
var store = var myStore = Ext.create('Ext.data.Store', {
model: 'User',
proxy: {
type: 'ajax',
url: 'server_path/context_path/allstudent',
reader: {
type: 'json',


root: 'users'
}
},
autoLoad: true
});

Ext.create('Ext.grid.Panel', {
store: store,
columns: [
{ text: 'Name', dataIndex: 'name',flex:1 },
{ text: 'id', dataIndex: 'id', flex: 1 }
],
height: 200,
width: 400,
renderTo: Ext.getBody()
});
});


gridpanel渲染后,store自动加载数据,一个request “.../.../allstudent”传到后台。后台收集数据,组成json对象,返回前台。store得到数据后,在grid里显示。
[解决办法]
先下载json-lib.zip,所有的jar包导入web-inf/lib
后台servlet:

JSONObject json = new JSONObject();
json.put("1", "java");
json.put("2", "vb");
json.put("3", "php");
response.getWriter().println(json.toString());

jsp:

$.ajax({
type:"post",
url:"com/testServlet",
async:false,
dataType:"json",
success:function(data){
console.log(data);//控制台打印json数据
}
});

读书人网 >Java Web开发

热点推荐