❶ 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串替换官方的看看样式是不是正确的,如果正确,那肯定是你页面那里写错了。很好排除!