`

Extjs整合struts2(1)

阅读更多

步骤1、在项目中添加struts2的库。如下

 

步骤2、添加Google的jsonplugin 插件。

下载Google json插件http://code.google.com/p/jsonplugin/downloads/detail?name=jsonplugin-0.34.jar&can=2&q=jsonplugin-0.34.jar  包放入项目的库中。注意版本要正确。

步骤3、写action类,配置struts.xml文件。

view plaincopy to clipboardprint?
<package name="agnet-json" extends="json-default" 
    namespace="/agent"> 
    <action name="jsonDemo" 
        class="com.voicesoft.agentbrowser.web.actions.JsonDemo"> 
        <result type="json"> 
            <param name="defaultEncoding">utf-8</param> 
        </result> 
    </action>       
</package> 
 <package name="agnet-json" extends="json-default"
  namespace="/agent">
  <action name="jsonDemo"
   class="com.voicesoft.agentbrowser.web.actions.JsonDemo">
   <result type="json">
    <param name="defaultEncoding">utf-8</param>
   </result>
  </action>  
 </package>

在配置改action的时候务必加上<result type="json"> <param name="defaultEncoding">utf-8</param> </result>否则不兼容ie7因为ie7只认识utf-8编码格式不认识utf8格式,这个都是我研究好久搞出来的结论。

步骤4、添加extjs库。

在extjs官方下载extjs库引入库文件

 

步骤5、写一个通过ext的jsonstore获取数据,并用extjs的datagrid显示数据的例子。

view plaincopy to clipboardprint?
/** 
 * panlegrid 分页显示json数据的例子 
 */ 
Ext.onReady(function() {  
            var store = new Ext.data.JsonStore({  
                        url : "/CallCenterMS/agent/jsonDemo.action",  
                        totalProperty : "results",  
                        root : "rows",  
                        remoteSort : true,  
                        fields : ['id', 'key0', 'key1', 'key2']  
                    });  
            store.on('beforeload', function() {  
                        Ext.apply(this.baseParams, {  
                            test : 12  
                                // 你需要传的参数  
                            });  
                    });  
            store.load({  
                        params : {  
                            start : 0,// 起始页数  
                            limit : 10  
                        }  
                    });  
            var grid = new Ext.grid.GridPanel({  
                        width : 500,  
                        height : 400,  
                        title : '分页测试',  
                        store : store,  
                        defaults : {  
                            // width : 100,  
                            sortable : true 
                        },  
                        // grid columns  
                        columns : [{  
                                    header : "id",  
                                    dataIndex : 'id' 
                                }, {  
                                    header : "key0",  
                                    dataIndex : 'key0' 
                                }, {  
                                    header : "key1",  
                                    dataIndex : 'key1' 
                                }, {  
                                    header : "key2",  
                                    dataIndex : 'key2' 
                                }],  
                        loadMask : {  
                            msg : "数据加载中,请稍等..." 
                        },  
                        bbar : new Ext.PagingToolbar({  
                                    pageSize : 10,  
                                    store : store,  
                                    displayInfo : true,  
                                    beforePageText : ' 第 ',  
                                    afterPageText : ' 共 {0} 页 ',  
                                    displayMsg : '当前显示第 {0} 条到  {1}条,共计 {2} 条',  
                                    emptyMsg : "没有记录" 
                                }),  
                        buttons : [{  
                                    text : '第二页',  
                                    listeners : {  
                                        "click" : function() {  
                                            store.load({  
                                                        params : {  
                                                            start : 2,// 起始页数  
                                                            limit : 10  
                                                            // 每次取的页数  
                                                        }  
                                                    });  
                                        }  
                                    }  
                                }]  
                    });  
            grid.render(Ext.getBody());  
        }) 

 

转自:http://blog.csdn.net/open2job/archive/2009/11/11/4797277.aspx

分享到:
评论

相关推荐

    Extjs整合struts2.doc

    在整合 Struts2 时,你需要确保添加了必要的依赖库,例如 `struts2-json-plugin-2.1.8.jar`,这个插件允许 Struts2 将结果直接转换为 JSON 格式,便于与 ExtJS 通信。 配置方面,你需在 `web.xml` 文件中设置 ...

    ExtJS与Struts2的整合工程实例

    Struts2框架则是Apache组织的一个项目,它继承了Struts1的优点并解决了其局限性。Struts2的核心是Action类,它是业务逻辑的入口点,通过配置Action Mapping,Struts2可以处理HTTP请求并调用相应的Action进行处理。...

    extjs 跟 struts+json

    文章可能通过一个实际项目或示例,详细解释了如何将ExtJS的Grid Panel与Struts 2通过JSON进行数据交互,帮助读者理解这两种技术的整合过程。学习这些内容有助于提升Web应用的用户体验,实现数据的实时更新和交互。

    extjs_struts2_整合

    extjs_struts2_整合

    Struts2与extjs整合例子

    标题“Struts2与extjs整合例子”表明我们将探讨如何将这两个技术结合在一起,以实现后端与前端的高效协作。在实际项目中,这样的整合可以利用Struts2的强大处理能力和ExtJS的出色用户界面,创建出功能丰富且用户体验...

    extjs与struts的整合代码

    1. **配置Struts2 Action:** 在Struts2的配置文件中定义Action,这些Action将处理来自ExtJS的请求,并返回JSON或XML数据,供前端展示。 2. **创建ExtJS Store:** Store是ExtJS中的数据容器,负责与服务器进行数据...

    Extjs4文件上传,后台struts2

    在本文中,我们将深入探讨如何使用ExtJS 4与Struts2框架实现文件上传功能。ExtJS是一个强大的JavaScript库,提供了丰富的用户界面组件,而Struts2是Java Web开发中的一个MVC框架,用于处理后端业务逻辑。下面,我们...

    Hibernate+Spring+Struts2+ExtJS整合开发实例

    "Hibernate+Spring+Struts2+ExtJS整合开发实例"就是一个典型的Java Web应用程序开发案例,它将四个关键组件结合在一起,以实现高效、模块化的后端和前端功能。 **Hibernate** 是一个流行的Java对象关系映射(ORM)...

    Extjs+Struts整合入门实例

    本入门实例主要探讨的是如何将ExtJS与Struts进行整合,以构建一个图书管理系统的前端和后端。这样的整合使得开发者能够利用ExtJS的前端优势,提供美观且交互性强的用户界面,同时利用Struts在服务器端进行数据处理和...

    struts2和ExtJs整合实例

    整合Struts2和ExtJS的主要目的是利用Struts2的强大后端处理能力,结合ExtJS的前端交互性和用户体验,打造高性能、易维护的Web应用。下面将详细介绍整合过程中的一些关键知识点: 1. **Struts2与ExtJS的通信方式**:...

    漂亮的Extjs+struts2实现联动下拉

    ExtJS和Struts2是两种在Web开发中广泛使用的开源技术。ExtJS是一个JavaScript库,提供了丰富的用户界面组件,如数据网格、图表、表单等,用于构建富客户端应用程序。Struts2则是一个基于MVC设计模式的Java Web框架,...

    图书管理系统源码(ExtJs+struts2+hibernate+spring)

    【图书管理系统源码(ExtJs+struts2+hibernate+spring)】是一个基于Web的软件项目,它展示了如何整合多种技术来构建一个实际的应用系统。这个管理系统使用了前端框架ExtJs,后端MVC框架Struts2,持久层框架...

    struts2+extjs+json整合实例

    在Struts2和ExtJS整合中,JSON起到桥梁作用,将服务器端的Action产生的数据转换为JSON格式,然后由ExtJS前端解析并显示在界面上。 整合Struts2、ExtJS和JSON的步骤通常包括以下几个部分: 1. **设置Struts2的JSON...

    搭建EXTJS和STRUTS2框架(ext和struts2简单实例)

    ### 搭建EXTJS和STRUTS2框架(ext和struts2简单实例) #### 一、概述 本文档将详细介绍如何在Java Web项目中搭建EXTJS和STRUTS2框架,并通过一个简单的实例来展示如何使这两个技术协同工作。EXTJS是一个用于构建交互...

    spring3+ibaits3+struts2.18+Extjs3整合增删查改

    "Spring3+iBatis3+Struts2.18+ExtJS3整合增删查改"是一个典型的Java Web开发组合,用于实现高效的数据管理和用户界面交互。下面我们将深入探讨这个组合中的每个组件及其在整体架构中的作用。 **Spring3**: Spring...

    Extjs+Struts2+JDBC

    ExtJS、Struts2和JDBC是Web开发中常见的技术栈,它们的结合可以构建功能丰富的交互式Web应用。这个小例子提供了一个基于这些技术的简单增删改查(CRUD)操作的实现,对于初学者来说是一个很好的学习资源。 ExtJS是...

    struts2+extjs整合包

    在整合Struts2和ExtJS时,通常会通过Ajax通信来实现实时的用户交互。Struts2的JSON插件可以方便地将Action的结果转换为JSON格式,供ExtJS的组件消费。同时,ExtJS可以通过Store和Proxy组件来管理和加载由Struts2返回...

    Extjs+Struts2系统后台管理框架

    这种组合允许前端利用ExtJS的强大界面组件来提供美观、交互性强的用户界面,而后端通过Struts2处理业务逻辑和数据操作,实现前后端的分离。 在"Extjs+Struts2系统后台管理框架"中,"新闻列表"功能通常涉及到以下几...

    ext整合struts2

    **EXTJS整合Struts2的步骤:** 1. **引入依赖**:在项目中引入EXTJS的JavaScript库,以及Struts2的Struts2-EXTJS插件。 2. **配置Struts2**:在struts.xml中配置EXTJS相关的Action,指定返回JSON格式的结果,以便...

Global site tag (gtag.js) - Google Analytics