❶ struts2 怎麼配置 json
第一步: 添加struts2-json-plugin-2.3.1.2.jar
第二部: 在struts配置文件中
第五部 : js中可以測試接受結果
❷ struts2 + json
簡單一點的方法就是不通過struts的返回類型,直接用response寫就可以,代碼如下:
HttpServletResponse response=ServletActionContext.getResponse();
response.setContentType("text/html;charset=utf-8");
//response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
String jsonString="{\"user\":{\"id\":\"123\",\"name\":\"張三\",\"say\":\"Hello , i am a action to print a json!\",\"password\":\"JSON\"},\"success\":true}";
out.println(jsonString);
out.flush();
out.close();
打字不易,如滿意,望採納。
❸ struts2返回json和幾種方式
"text/html");PrintWriter out =
response.getWriter();
out.println("json");out.flush();returnnull;輸入結果:json二、通過struts返回stream來輸出action代碼publicclass {privateInputStream inputStream;publicInputStream getInputStream() {returninputStream;}publicStringexecute()throwsException {
inputStream=newStringBufferInputStream("json");returnSUCCESS; }}xml配置<actionname="text-result"class="actions.TextResult"<resulttype="stream"<paramname="contentType"text/html</param<paramname="inputName"
inputStream</param</result
</action輸出結果:json三、使用struts2-json-plugin插件:可以下載獲得action代碼publicclass {privateObject name;
//要對需要輸出的屬性,生成getter和setter方法,即以bean的形式存在publicStringexecute()throwsException {name= "json";returnSUCCESS; }publicString getName() {returnthis.name;}}xml配置<packagename="example"extends="json-default"<actionname="JSONExample"class="example.JSONExample"<resulttype="json"<paramname="contentType"text/html</param</result
</action
</package
輸出結果:{"name":"json"}
使用這個插件,默認會把action中所有有get方法的屬性把輸出,可以使用@JSON(serialize
=false)這個註解進行取消。
❹ struts2怎麼解析json
jsp中利用ajax傳遞的參數統一用request.getParameter('xxx')來獲取參數
如果是一個json數組,那麼解析對象的時候用JSONArray接收就可以了。
/**
* 從json數組中得到相應java數組
* JSONArray下的toArray()方法的使用
* @param str
* @return
*/
public static Object[] getJsonToArray(String str) {
JSONArray jsonArray = JSONArray.fromObject(str);
return jsonArray.toArray();
}
public static void main(String[] args) {
JSONArray jsonStrs = new JSONArray();
jsonStrs.add(0, "cat");
jsonStrs.add(1, "dog");
jsonStrs.add(2, "bird");
jsonStrs.add(3, "ck");
Object[] obj=getJsonToArray(jsonStrs.toString());
for(int i=0;i<obj.length;i++){
System.out.println(obj[i]);
}
}
❺ struts2中如何獲得json格式數據
後台獲得前台的數據自己可以寫特定的方法截取裡面的屬性,主要用.split(",")和.split(":")前台用jquery的.each方法就可以了
❻ struts2-json中註解@JSON是什麼用
處理JSON數據
6.對一些屬性來的特殊處理可在源action代碼中去特殊的序列化,如:
[6.1]默認情況下以get方法開頭的都會序列化,如果不想序列化,在action中的方法要打上註解
@JSON(serialize=false)
[6.2]如果在屬性get方法上面加@JSON(name="newName"),則返回的json數據中名稱是指定的新名稱
[6.3]@JSON(format ="yyyy-MM-dd'T'HH:mm:ss")設置用於格式化輸出、解析日期表單域的格式。
[6.4]@JSON(deserialize=true)設置是否反序列化該屬性
❼ 在struts2中用json用這struts2-json-plugin-2.2.3一個包可以嗎
struts2-json-plugin-2.2.3.jar,這個包允許struts返回json數據。
用法如下:
(其中<param name="root">json</param>的json,是對應action里的private Map<String, Object> json)
<package name="default" namespace="/" extends="json-default">
<action name="reload" method="reload" class="action.ConfigAction">
<result type="json">
<param name="root">json</param>
</result>
</action>
</package>
❽ Struts2中JSON轉化
自動轉換的來json有時候是不符自合要求的,或者無法滿足業務需要。
easyuigrid沒有用過,不知道你指的是easyui 還是jquery easyui,其實最簡單的辦法就是使用官方demo
來測試下。檢查下和官方的json格式有什麼不同沒有,如果正常,用你的json串替換官方的看看樣式是不是正確的,如果正確,那肯定是你頁面那裡寫錯了。很好排除!