如果您发现内容含有错误或公司内部信息,请予以指出,本人不胜感激。。。。
到工作不是很忙时,将介绍此功能!!!从今天开始,准备开javaeye博客,记录工作中的点点滴滴......
首先要做的准备工作是:
引进 js文件:json.js,引进java类JSONObject.java,JSONArray.java ,
JSONStringer.java ,JSONWriter.java, JSONTokener.java,
JSONException.java, JSONString.java (可以去官网下载:http://www.json.org/)
demo1:
利用json从web端向struts2传输Map对象:
内容待续。。。。。。。。。
js文件中加入:
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); });
struts2配置文件中加入
<action name="testJsonAction" class="TestJsonAction" method="testJson"> <result name="success" type="json"> <param name="root">result</param> </result> </action>
struts2处理类
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; } }
demo2:
利用json从struts2向web端返回Map对象:
内容待续。。。。。。。。。