js,jquery和struts通過json進行各種類型的數據的交互

[size=large][color=red][b]如果您發現內容含有錯誤或公司內部信息,請予以指出,本人不勝感激。。。。[/b][/color][/size]
[b][size=medium]到工作不是很忙時,將介紹此功能!!!從今天開始,準備開javaeye博客,記錄工作中的點點滴滴......[/size][/b]

[b]首先要做的準備工作是:[/b]
引進 js文件:json.js,引進java類JSONObject.java,JSONArray.java ,
JSONStringer.java ,JSONWriter.java, JSONTokener.java,
JSONException.java, JSONString.java (可以去官網下載:[url]http://www.json.org/[/url])

[size=small][b]demo1:[/b][/size]
利用json從web端向struts2傳輸Map對象:

內容待續。。。。。。。。。

[b]js文件中加入:[/b]

var userArray=new Array();
for(var i=1;i<=5;i++)
{
var id=i;
var userName="name"+i;

userArray.push({id:id, userName:name});
}
var users = JSON.stringify(userArray); //記住不是:JSON.tostring(userArray);
var url = "testJsonAction";
var params = {"users":users};
$.getJSON(url,params,function(result){
alert(result);
});


[b]struts2配置文件中加入[/b]

<action name="testJsonAction" class="TestJsonAction" method="testJson">
<result name="success" type="json">
<param name="root">result</param>
</result>
</action>



[b]struts2處理類[/b]


package test;

import java.util.HashMap;
import java.util.Map;

import com.org.json.JSONArray;
import com.org.json.JSONException;
import com.opensymphony.xwork2.ActionSupport;

public class TestJsonAction extends ActionSupport {

private String users;
private String result;

public String testJson() throws JSONException {
Map<Long, String> usersMap = new HashMap<Long, String>();
// 將JSON格式的字符串構造成JSON對象
JSONArray jsonArray = new JSONArray(users);
for (int i = 0; i < jsonArray.length(); i++) {
Long id = jsonArray.getJSONObject(i).getLong("id");
String userName = jsonArray.getJSONObject(i).getString("userName");
usersMap.put(id, userName);
}
//do your other task;
if(條件成立) {
result="success";
}else{
result="failure";
}
return SUCCESS;
}

@JSON(serialize=false)
public String getUsers() {
return users;
}

public void setUsers(String users) {
this.users = users;
}

@JSON(serialize=false)
public String getResult() {
return result;
}

public void setResult(String result) {
this.result = result;
}

}


[size=small][b]demo2:[/b][/size]
利用json從struts2向web端返回Map對象:

內容待續。。。。。。。。。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章