本例使用struts2版本 struts-2.1.8.1
首先导入必要的jar包:
配置web.xml:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
接着书写Action类:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.opensymphony.xwork2.Action;
public class Test {
public Map responseJson;
public Map getResponseJson() {
return responseJson;
}
public void setResponseJson(Map responseJson) {
this.responseJson = responseJson;
}
public String getList(){
Map<String, Object> map = new HashMap<String, Object>();
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
for(int i=0;i<3;i++){
Map<String, Object> m = new HashMap<String, Object>();
m.put("id", i);
m.put("name", "Mic"+i);
list.add(m);
}
map.put("rows", list);
map.put("totalCont", 3);
this.setResponseJson(map);
return Action.SUCCESS;
}
}
最后配置struts.xml文件:
<package name="jsonTest" extends="json-default">
<action name="test" class="bll.Test" method="getList">
<result type="json">
<param name="root">responseJson</param>
</result>
</action>
</package>
struts.xml配置说明:
1,<result type="json"> 这句说明返回类型为json,所以extends设置为"json-default"。
2,<param name="root">responseJson</param> responseJson对应返回数据的根,如果省略这行返回的结果如下:
{"list":"success","responseJson":{"rows":[{"name":"Mic0","id":0},{"name":"Mic1","id":1},{"name":"Mic2","id":2}],"totalCont":3}}
如果设置了root,结果如下:
{"rows":[{"name":"Mic0","id":0},{"name":"Mic1","id":1},{"name":"Mic2","id":2}],"totalCont":3}
以上步骤做好后,我们就可以调用该action了:
Ext.onReady(function(){
new Mic.GridPanel({
title : 'test',
width : 500,
height : 410,
dataUrl : 'test.action',
dwrStore : false,
colMapping : ['id','name'],
headers : [
{ header: "Id", width: 60, dataIndex:'id'},
{ header: "名称", width: 150, dataIndex:'name'}
]
}).render(Ext.getBody());
});
调用说明: dataUrl : 'test.action' test就是action中的name属性。
返回数据:
效果图:
- 大小: 15.6 KB
- 大小: 8.9 KB
- 大小: 22.9 KB
分享到:
相关推荐
iterator_jsonDemo1的链接:http://download.csdn.net/detail/cafebar123/8816409 运用了Extjs,Struts2, json,iterator技术, 将数据从后台传到Extjs表现层(自带json相关jar包)。注释详细,供参考。 Use ...
ExtJs + Struts2 + JSON 程序总结
Struts2+Json+ExtJS分页 资料来自互联网,及供参考学习。
struts2 json extjs 完整实例 struts2 json extjs 完整实例 完整可用 无错! struts2 json extjs 完整实例 struts2 json extjs 完整实例 完整可用 无错! struts2 json extjs 完整实例 struts2 json extjs 完整...
extjs+struts2+hibernate+json登录程序,主要讲解struts2配置JSON与前台extjs通信,异步数据交换,很强大
ExtJS4+Accordion+SERVLET/STRUTS2+JSON+Ext.tree.Panel实例
本Demo采用Struts2.1.8+Spring2.5.6(Annotation注解)+Hiberante3.3.2(Annotation注解)+ExtJS(Struts2-json)
Hibernate+Spring+Struts2+ExtJS开发CRUD功能
struts2+extjs+json整合实例
JPA STRUTS SPRING EXTJS JSON
ExtJS+struts2+json登陆实例--源码,适合初学者
@@@extjs+struts2+json plugin的例子
Struts2(json-plugin) + Spring2 + ExtJS2.2 开源网络硬盘系统
Extjs Tree + JSON + Struts2 例子
struts2 学习参考文档,spring 结合学习参考文档,希望对大家都有帮助
extjs动态树struts请求数据json数据格式
为了方便ajax调用传输数据,在struts2中加入的json插件用来做对象的序列化和反序列化,json插件的下载地址 http://code.google.com/p/jsonplugin/ 1. 下载json插件包,将jar包拷贝到WEB-INF/lib目录 注:struts2...
NULL 博文链接:https://wanglu271991027.iteye.com/blog/1539242
extjs异步树,多选树,json数据机构,集成spring,struts例子,extjs异步树,多选树,json数据机构,集成spring,struts例子,extjs异步树,多选树,json数据机构,集成spring,struts例子,extjs异步树,多选树,json...
EXTJS json struts2制作登陆窗口