Extjs4---grid+servlet分页查询
来源:互联网 发布:皮肤差怎么调理知乎 编辑:程序博客网 时间:2024/05/16 15:19
这个实例是extjs4 grid+servlet的分页查询,忙了一下午总算弄出来了,和大家交流分享一下,我也是这几天在自学的Extjs4,可能有些地方写的不太对,有错误希望大家指出来
html页面代码;
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Grid分页查询示例</title> <link rel="stylesheet" type="text/css" href="ext4/resources/css/ext-all.css" /> <script type="text/javascript" src="ext4/ext-all.js"></script> <script type="text/javascript" src="js/pageOfgrid.js"></script> </head> <body> <div id="grid"></div> </body> </html>
pageOfgrid.js代码:
//预加载Ext.require([ 'Ext.grid.*', 'Ext.toolbar.Paging', 'Ext.data.*' ] );Ext.onReady(function(){//创建ModelExt.define('User',{extend:'Ext.data.Model',fields:[ {name:'name',mapping:'name'}, {name:'sex',mapping:'sex'}, {name:'age',mapping:'age'}]})//创建数据源var store = Ext.create('Ext.data.Store',{model:'User',//设置分页大小pageSize:5,proxy: { type: 'ajax', url : 'users', reader: {//数据格式为json type: 'json', root: 'bugs', //获取数据总数 totalProperty: 'totalCount' } },autoLoad:true});//创建gridvar grid = Ext.create('Ext.grid.Panel',{store:store,columns:[ {text:'姓名',width:120,dataIndex:'name',sortable:true}, {text:'性别',width:120,dataIndex:'sex',sortable:true}, {text:'年龄',width:120,dataIndex:'age',sortable:true}],height:200, width:480, x:20, y:40, title: 'ExtJS4 Grid分页查询示例示例', renderTo: 'grid', //分页功能 bbar: Ext.create('Ext.PagingToolbar', { store: store, displayInfo: true, displayMsg: '显示 {0} - {1} 条,共计 {2} 条', emptyMsg: "没有数据" } ) })store.loadPage(1); })
Servlet后台代码:
package servlet;import java.io.IOException;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/* * @author 刘畅 */public class Servlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {doPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {Connection con = null;PreparedStatement pstmt = null;ResultSet rs = null;String start = req.getParameter("start");String limit = req.getParameter("limit");StringBuilder sb = null;//数据总数int total = 0;try {Class.forName("com.mysql.jdbc.Driver");con = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "123456");} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}//查询数据总数语句String countSql = "select count(*) from users";try {pstmt = con.prepareStatement(countSql);rs = pstmt.executeQuery();while(rs.next()){total = rs.getInt(1);}} catch (SQLException e) {e.printStackTrace();}//分页查询语句String sql = "select * from users limit " + start + ", " + limit;try {pstmt = con.prepareStatement(sql);rs = pstmt.executeQuery();sb = new StringBuilder();//设置json数据格式sb.append("{totalCount:"+total+",bugs:[");while (rs.next()) {sb.append("{");sb.append("name:" + "\'" + rs.getString(1) + "\',");sb.append("sex:" + "\'" + rs.getString(2) + "\',");sb.append("age:" + "\'" + rs.getString(3) + "\'");sb.append("},");}} catch (SQLException e) {e.printStackTrace();}try {rs.close();} catch (SQLException e) {e.printStackTrace();}String json = sb.substring(0, sb.length() - 1);json += "]}";System.out.println(json);resp.setContentType("text/html");resp.setCharacterEncoding("UTF-8");try {resp.getWriter().write(json);resp.getWriter().close();} catch (IOException e) {e.printStackTrace();}}}
web.xml源码:
<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>getUsers</servlet-name> <servlet-class>servlet.Servlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>getUsers</servlet-name> <url-pattern>/users</url-pattern> </servlet-mapping> </web-app>
效果图:
- Extjs4---grid+servlet分页查询
- Extjs4---Grid表格分页处理
- ExtJS4学习笔记(五)---Grid分页
- extjs4做的grid,带分页,搜索
- J2EE之 Extjs4.0 Grid 分页显示
- .NET之 Extjs4.0 Grid分页显示
- ExtJS4学习笔记(五)---Grid分页
- ExtJS4 Grid 带参数的查询
- Ext4.1 Grid 分页查询
- ExtJS4 grid动态生成表格分页 加入行号
- extjs4的grid中CheckboxModel,跨分页选中,
- ExtJs4 bbar分页带参数查询
- Extjs4分页是查询条件参数传递
- extjs4+jxl实现grid按条件查询导出到Excel
- java程序员菜鸟进阶(十一)Extjs4常用功能(三)——列表grid的使用(带综合查询,分页)
- Extjs grid带分页的查询
- servlet寻找。。。sql分页查询。。。。。
- ExtJs4分页
- i2c驱动之难点释疑
- 各种排序算法Java实现
- 测试之旅——【测试用例设计】——关于测试类型与归纳用例用例管理
- 程序操作EXCEL报错解决方法大汇总
- javascript DOM与javascript交互详解
- Extjs4---grid+servlet分页查询
- cocos2d-x游戏开发学习笔记
- 雨中飘荡的回忆
- C#:MDI子窗体最大化导致父窗体工具栏移动的问题解决
- 详细讲解提高数据库查询效率的实用方法
- 《micro2440开发》第三章:s3c2440A IIS总线部分
- VC MFC删除指定文件或文件夹内容
- android在Map上划线
- DelegatingFilterProxy【转】