[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對象:
內容待續。。。。。。。。。