zoukankan      html  css  js  c++  java
  • 自己编写的 objectDataSource 配合 GridView 实现分页...

        使用 Gridview 的默认分页功能当然非常简单方便,问题是数据量比较大的时候会有一些延时(因为 Gridview 是把所有记录都加载到内存进行分页的),如果使用objectDataSource 配合 GridView(或其他控件)使用存储过程分页不存在这种情况,可以轻易实现大批量记录分页。

        拿100万条记录试验了一下:sqlDataSource + Gridview 自动分页后每翻一页需要大概10多秒,而使用 objectDataSource + GridView + 存储过程分页,每翻一页只需要不到两秒钟就可以了。

    这里面最关键的有几点:
    1.存储过程必须的两个参数要搞明白是什么意思,不是随便写个分页的存储过程就能用的!
    2.必须给 objectDataSource 的 SelectCountMethod 指定一个返回 int 类型的记录总数
    3.objectDataSource 的 EnablePaging 属性值指定为 True  时默认会提交两个参数(maximumRows 和 startRowIndex),就是存储过程中用到的那两个参数。默认在代码中是没有的,但是在 SelectMethod 方法中只管接收就是了(可以手工指定参数名)

    数据库结构:

    Code

    存储过程:

    Code

    页面布局:

    Code

    实体类:

    Code

    换个样式
    再完美一点,增加一个 dropdownlist 选择页码,把翻页换成下边图片中的样式:

    Gridview 增加页码样式定义:

    Code

    翻页代码:

    Code
  • 相关阅读:
    Spring Boot----处理异常
    Spring Boot----SpringBoot中SpringMVC配置原理
    git----常见问题
    源码分析----Mybatis
    spring----一些xml配置
    Spring MVC----spring MVC 异常处理
    java----小游戏
    java----垃圾回收机制
    java----常见jar包
    anconda安装
  • 原文地址:https://www.cnblogs.com/jarod99/p/1379758.html
Copyright © 2011-2022 走看看