`
zqssei
  • 浏览: 1765 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Extjs+Mysql实现动态分页

阅读更多

刚刚学习Extjs,用Extjs做个了分页的小例子,有什么不对的地方请指出

<title>分组列表</title>
		<link rel="stylesheet" type="text/css" href="Extjs/resources/css/ext-all.css">
		<script type="text/javascript" src="Extjs/adapter/ext/ext-base.js"></script>
		<script type="text/javascript" src="Extjs/ext-all.js"></script> 
        <script type="text/javascript">
        	Ext.onReady(function(){
        		var userStore = new Ext.data.Store({
        			
        			proxy : new Ext.data.HttpProxy( {  
            				url : 'groups.do?method=groupsQuery'// 设置代理请求的url  
        			}),  
        			reader : new Ext.data.JsonReader({
        				totalProperty : 'results',
        				root : 'items',
        				id : 'row_id'
        			},
        			['row_id','name','createid','createtime','updateid','updatetime'])
        		});
        		
        		
        		
        		var sm = new Ext.grid.CheckboxSelectionModel();
        		var cm = new Ext.grid.ColumnModel([
        			new Ext.grid.RowNumberer(),sm,{
        				header : '编号',
        				width : 30,
        				dataIndex : 'row_id',
        				sortable : true	
        			},{
        				header : '分组名',
        				width : 40,
        				dataIndex : 'name',
        				sortable : true
        			},{
        				header : '创建时间',
        				width:50,
        				dataIndex : 'createtime',
        				sortable : true
        			},{
        				header : '更新时间',
        				width : 50,
        				dataIndex : 'updatetime',
        				sortable : true
        			}
        		]);
        		
        		
        		var userGrid = new Ext.grid.GridPanel({
        			applyTo : 'user-grid-div',// 设置表格现实位置   
       			    frame : true,// 渲染表格面板   
                    //tbar : toolbar,// 设置顶端工具栏   
                    stripeRows : true,// 显示斑马线   
                    autoScroll : true,// 当数据查过表格宽度时,显示滚动条   
                    store : userStore,// 设置表格对应的数据集   
                    loadMask : true,
					autoHeight : true,
					autoWidth : true,
					viewConfig : {
						autoFill : true
					},
					cm : cm,
					sm : sm,
					
					bbar : new Ext.PagingToolbar({
						pageSize : 5,
						store : userStore,
						displayInfo : true,
						beforePageText:'第',
    					afterPageText:'页 共{0}页',
						displayMsg:'显示第 {0} 条到 {1} 条记录,一共 {2} 条',
						emptyMsg : '没有记录',
						firstText:'首页',
      					prevText:'上一页',
     					nextText:'下一页',
     					lastText:'末页',
     					refreshText:'刷新'
					})
					
        		});
        		userStore.reload({
        			params:{start:0,limit:5}
        		})
        	})
        </script>
  </head>
  <body>
    <div id = "user-grid-div" style="width:100%; height:100%;"></div>
  </body>
</html>
 
public List getGroupsQuery(Connection con,int start,int end) throws SQLException{
		List list = new ArrayList();
		Statement st = con.createStatement();
		//String sql = "select * from groups";
		String sql = "select * from groups limit "+start+","+end;
		ResultSet rs = st.executeQuery(sql);
		while(rs.next()){
			Groups groups = new Groups();
			groups.setRow_id(rs.getString("row_id"));
			groups.setName(rs.getString("name"));
			groups.setUpdateid(rs.getString("updateid"));
			groups.setUpdatetime(rs.getString("updatetime"));
			groups.setCreateid(rs.getString("createid"));
			groups.setCreatetime(rs.getString("createtime"));
			list.add(groups);
		}
		rs.close();
		st.close();
		return list;
		
	}
	
	public int getGroupsCount(Connection con) throws SQLException{
		Statement st = con.createStatement();
		String sql = "select count(1) from groups";
		ResultSet rs = st.executeQuery(sql);
		int totalCount = 0;
		while(rs.next()){
			 totalCount = rs.getInt(1);
		}
		rs.close();
		st.close();
		return totalCount;
	}
 
private groupsDaoImpl gDao = new groupsDaoImpl();
	
	public List getUserQuery(int start,int end){
		List list = null;
		Connection con = null; 
		try {
			con = DBCon.getConnection();
			//list = uDao.getUserQuery(con);
			list = gDao.getGroupsQuery(con, start, end);
		} catch (Exception e) {
			list = new ArrayList();
			e.printStackTrace();
		}finally{
			try {
				if(con!=null){con.close();}
			} catch (Exception e) {e.printStackTrace();}
		}
		return list;
 	}
	
	public int getGroupsCount(){
		int totalCount = 0;
		Connection con = null; 
		try {
			con = DBCon.getConnection();
			//list = uDao.getUserQuery(con);
			totalCount = gDao.getGroupsCount(con);
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			try {
				if(con!=null){con.close();}
			} catch (Exception e) {e.printStackTrace();}
		}
		return totalCount;
	}
 
private groupsBiz gBiz = new groupsBiz();
	
	public ActionForward groupsQuery(ActionMapping mapping, ActionForm form,
			  HttpServletRequest request, HttpServletResponse response)throws Exception{
		int start = Integer.parseInt(request.getParameter("start"));
		int end = Integer.parseInt(request.getParameter("limit"));
		System.out.println("start"+start);
		List groups = gBiz.getUserQuery(start,end);
		int totalCount = gBiz.getGroupsCount();
		/*
		int pager = Integer.valueOf(start);
		List groups = gBiz.getUserQuery();
		List list =new ArrayList();
		if(pager==0){
			if(groups.size()>5){
				for(int i=0;i<5;i++){
					list.add(groups.get(i));
				}
			}else{
				for(int i=0;i<groups.size();i++){
					list.add(groups.get(i));
				}
			}
		}else{
			int num = pager+5;
			if(groups.size()>num){
				for(int i=pager; i<num;i++){
					list.add(groups.get(i));  
				}
			}else{
				for(int i=pager; i<groups.size();i++){
					list.add(groups.get(i));
				}
			}
		}
		*/
		JSONObject jsonObject = ExtHelper.getJsonFromList(totalCount,groups);
		System.out.println("json格式:"+jsonObject);
		response.setContentType("text/jsom;charset=UTF-8");
		response.getWriter().write(jsonObject.toString());
		return null;
	}
分享到:
评论

相关推荐

    php+Extjs+mysql实例

    本项目“php+Extjs+mysql实例”正是这样一个综合性的应用,它结合了三种技术,即PHP作为后端服务器语言,MySQL作为数据库管理系统,以及ExtJS作为前端JavaScript框架,实现了合同信息的全面管理功能,包括添加、修改...

    ExtJs4.2+Mysql+Struts2+Hibernate3实现分页查询

    ExtJs4.2+Mysql+Struts2+Hibernate3实现分页查询 1.libs目录缺少hibernate核心jar包 2.libs目录缺少struts jar 3.WebRoot目录缺少ExtJs4.2核心类库 以上信息我都在项目里面注明了,因为这些内容的文件太大了,CSDN不...

    extjs+java+mysql通用后台管理

    在“extjs-java-mysql通用后台”这个项目中,开发者通常会定义一系列RESTful API接口,这些接口由Java Spring处理,EXTJS前端通过AJAX调用这些接口,实现数据的增删改查和页面的动态更新。同时,为了保证系统的安全...

    extjs+struts2+mysql

    ExtJS 提供了灵活的数据绑定机制,可以方便地与后台数据源进行交互,实现动态加载和实时更新。不过,描述中提到按时间条件的查询尚未完成,这可能需要扩展 `PersonSearch` 组件,添加日期选择器,并处理相应的请求...

    extjs+php分页例子

    在本实例中,我们将讨论如何结合ExtJS与PHP实现分页功能。 分页是网页应用中常见的一种数据展示方式,尤其当处理大量数据时,它能够提高用户体验,避免一次性加载过多数据导致页面加载缓慢。ExtJS提供了强大的分页...

    php+extjs+grid实时显示更新数据

    EXTJS的Grid组件是一种强大的数据展示工具,可以轻松地处理大量数据,并提供灵活的排序、筛选和分页功能。 首先,我们需要理解PHP在其中的角色。PHP是一种广泛使用的服务器端脚本语言,特别适合于处理动态内容和与...

    Extjs+数据库+dwr+案例+xml

    开发者可以添加监听器来响应这些事件,实现动态更新、数据验证等业务逻辑。 7. **样式和布局**:ExtJS提供了丰富的样式和布局管理,使得应用具有良好的用户体验。Grid的列宽、颜色、样式等都可以自定义。 通过这个...

    ExtJS6.5.0+SSM表格增删改查+分页

    1.使用ExtJS6.5.0+SSM 2.实现Grid表格的增删改查和分页,数据库使用的是MySql, 3.项目代码和数据脚本齐全 4.Jar齐全,加载即可运行 5.VX:humingxing可随时交流

    SpringMVC+mysql源代码

    - **分页查询**:为了提高性能和用户体验,大量数据通常需要分页显示,这可能通过SQL的LIMIT和OFFSET实现,或者使用第三方库如MyBatis的PageHelper。 6. 视图: - **MVC中的View**:负责将数据呈现给用户,可能是...

    S2SH+mysql+Extjs4.1简单入门项目实例(包含表格,统计图表,表单等基础组件和swfupload多文件上传)

    - 统计图表:Extjs的Charts模块可以生成各种动态图表,如柱状图、饼图、线图等,方便数据可视化。 - 表单:FormPanel组件用于创建交互式的表单,可以包含各种输入控件,如文本框、选择框、日期选择器等。 5. **...

    extjs后台分页实例

    - 使用SQL查询语句实现分页,例如`LIMIT`和`OFFSET`在MySQL中,或`SELECT ... FROM ... WHERE ROWNUM BETWEEN ... AND ...`在Oracle中。 - 数据库查询的结果应转换为JSON格式,并在响应体中返回。 4. **数据绑定*...

    EXT.NET+EF+MYSQL 的后台管理系统

    这是一个用EXT.NET+Entity FrameWork+Mysql 做的后台管理系统,最初是为一个项目做的,后来项目烂尾,代码也就没用了。但系统的整体框架、数据库的增删改查、分页、等功能都是完成了的。可以用于同类的项目,这套...

    SSH Extjs treeGrid conboxTree 分页实例

    最近在自学Extjs,做了一个小例子,后台使用SSH,前台是ExtJs,其中包含了很多内容,例如grid,TreeGrid,comboxTree,分页等内容,数据库采用的是mysql,文件中包含了数据库文件,导入mysql数据库即可,希望可以对初学者有一点...

    完整的JSP + ExtJS 学生信息管理

    这个系统结合了JSP(JavaServer Pages)作为后端动态网页技术,以及ExtJS作为前端富客户端框架,实现了功能丰富的用户界面和强大的数据处理能力。 【描述】该系统采用MVC(Model-View-Controller)设计模式,使得...

    extjs入门项目+数据库

    在"extjs入门项目+数据库"中,我们聚焦于如何使用ExtJS来构建一个图书管理系统,并结合Java后端和MySQL数据库实现数据的存储与管理。 **ExtJS框架** ExtJS 提供了一整套组件化的UI元素,如表格、表单、面板、菜单等...

    SSH+Ext2.2+MySql(2)

    采用SSH架构实现&lt;深入浅出ExtJs&gt;实例,系统包括:表格,分页,表单,表格与表单的关联等等,是初学者必不可少的学习资料,经本人实际测试通过。

    SSH+Ext2.2+MySql(1)

    采用SSH架构实现&lt;深入浅出ExtJs&gt;实例,系统包括:表格,分页,表单,表格与表单的关联等等,是初学者必不可少的学习资料,经本人实际测试通过。

    通用后台管理系统(ExtJS 4.2+Hibernate 4.1.7+Spring MVC 3.2.8).docx

    2. 分页模块:ListView、PageView和QueryResult用于ExtJS的后台分页处理。 3. 数据字典:SystemInitListener加载XML格式的数据字典,供系统内部调用。 4. 登录管理:LoginFilter处理登录状态,防止未登录用户访问...

    通用后台管理系统(ExtJS 4.2+Hibernate 4.1.7+Spring MVC 3.2.8).pdf

    2. ListView、PageView 和 QueryResult:作为 ExtJS 的后台分页模块。 3. SystemInitListener:加载以 XML 格式的数据字典,放进内存供调用。 4. LoginFilter:处理登录各种情况,将 session 为 null 的操作重定向...

    通用后台管理系统(ExtJS 5.1 + Hibernate 4.1.7 + Spring MVC 3.2.8).docx

    同时,系统支持MySQL、Oracle和SQL Server等多种数据库,通过Hibernate的Dialect机制实现了数据库的平滑迁移。 在代码结构上,系统采用了分层设计,包括BaseParameter、ExtJSBaseController、BaseService和BaseDao...

Global site tag (gtag.js) - Google Analytics