自定义ExtJs分页功能:Java+Oracle数据绑定示例

4星 · 超过85%的资源 需积分: 3 86 下载量 178 浏览量 更新于2024-09-25 收藏 45KB DOC 举报
在这个ExtJs、Java和Oracle集成的例子中,我们主要探讨如何使用这三个技术构建一个动态数据表格(Grid Panel)来展示数据库中的数据。ExtJS是一个流行的JavaScript库,特别适用于开发交互式Web应用,而Java作为后端语言提供了强大的服务器端支持,Oracle则作为关系型数据库管理系统,用于存储和管理数据。 首先,我们定义了几个关键变量,如`pagesizenum`(每页记录数量)、`pagenum`(当前页码)、`startnum`(记录起始位置)、`pagecount`(总页数)和`where`(SQL查询条件)。这些变量用于控制分页和数据过滤。 数据源部分是整个应用的核心。通过`Ext.data.Store`,我们可以从服务器获取数据。这里使用了`Ext.data.HttpProxy`,它负责与Java Servlet(如`http://10.30.1.1/ExtStu/QueryUser`)进行通信,以POST方式发送请求。`JsonReader`被用来解析返回的JSON格式数据,定义了数据源的总记录数(`totalProperty`)以及需要读取的具体列(`root`和`mapping`)。 在`store.load`方法中,传入参数来动态更新查询条件,包括当前页的开始索引和每页的数量。这样,随着用户翻页或改变查询条件,数据源会自动更新并重新加载数据。 接下来,创建了一个`Ext.grid.GridPanel`实例,其`store`属性指向我们之前定义的数据源。列配置包括一个`RowNumberer`列用于显示行号,以及两个具体的数据列,分别映射到数据库中的`username`和`userid`字段。此外,列还设置了可排序性,允许用户对数据进行排序。 这个例子展示了如何利用ExtJS的前端框架与Java后端和Oracle数据库相结合,实现动态数据网格的功能,包括分页、数据获取和列的自定义显示。这在构建企业级Web应用时非常实用,尤其是在处理大量数据时,能提供良好的用户体验。通过这种方式,用户可以方便地浏览和筛选来自Oracle数据库的信息,而无需频繁刷新整个页面。