`

分页助手类

阅读更多
/**  
 * 分页操作助手类   
 *  
 */  
public class PagedList   
{   
    protected long count; //数据的总数   
    protected int last; //最后一页   
    protected int previous;//上一页   
    protected int index; //当前页   
    protected int next; //下一页   
    protected boolean hasFirst; //是否首页   
    protected boolean hasLast; //是否最后一页   
    protected boolean hasNext; //是否有下一页   
    protected boolean hasPrevious;//是否有上一页   
    protected List pageList;  //页面显示的页码集   
    protected List list;  //数据集   
       
    /**  
       * 构造方法,构建一个分页类  
       *   
       * @param count 数据总数  
       * @param size  每页显示多少  
       * @param index 当前页  
       * @param list  数据集  
       * @return  
      */  
    public PagedList(long count, int size, int index, List list)   
    {   
        this.list = list;   
        this.count=count;   
        this.index=index;   
        if(index < 1)   
            index = 1;   
        if(count % (long)size > 0L)   
            last = (int)(count / (long)size + 1L);   
        else  
            last = (int)(count / (long)size);   
        //如果当前页不是最后一页,   
        hasNext = hasLast = index < last;   
        //如果有下一页   
        if(hasNext)   
            next = index + 1;   
        //如果当前页不是第一页,   
        hasPrevious = hasFirst = index > 1;   
        //如果有上一页   
        if(hasPrevious)   
            previous = index - 1;   
        //页码集   
        pageList = new ArrayList();   
        int start = 0;   
        int stop = 0;   
        if(index <= 5)   
        {   
            start = 1;   
            if(last > 10)   
                stop = 10;   
            else  
                stop = last;   
        } else  
        {   
            start = index - index % 5;   
            if(last > start + 10)   
                stop = start + 10;   
            else  
                stop = last;   
        }   
        for(int i = start; i <= stop; i++)   
            pageList.add(Integer.valueOf(i));   
    }   
  
    public List getList()   
    {   
        return list;   
    }   
  
    public List getPageList()   
    {   
        return pageList;   
    }   
  
    public long getCount()   
    {   
        return count;   
    }   
  
    public int getPrevious()   
    {   
        return previous;   
    }   
  
    public int getNext()   
    {   
        return next;   
    }   
  
    public int getIndex()   
    {   
        return index;   
    }   
  
    public int getLast()   
    {   
        return last;   
    }   
  
    public boolean hasNext()   
    {   
        return hasNext;   
    }   
  
    public boolean hasPrevious()   
    {   
        return hasPrevious;   
    }   
  
    public boolean hasFirst()   
    {   
        return hasFirst;   
    }   
  
    public boolean hasLast()   
    {   
        return hasLast;   
    }   
  
      
}  


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xiaoping8411/archive/2010/04/02/5446369.aspx
分享到:
评论

相关推荐

    分页助手使用demo

    首先,分页助手通常是一个辅助工具类,它能够帮助我们便捷地处理数据库查询时的分页逻辑。在SpringBoot项目中,我们可以选择诸如MyBatis-Plus等流行的持久层框架,它们通常提供了内置的分页功能。MyBatis-Plus中的...

    ssh 分页组件,含使用示例

    `PagerHelp.java`可能是分页助手类,它包含了处理分页逻辑的方法,比如计算总页数、根据页码和每页记录数获取数据库中的数据等。这个类通常会与Hibernate或Spring JPA等持久层框架集成,用于执行SQL查询来获取分页...

    Ibatis.net 分页

    3. **使用Ibatis.NET提供的扩展分页库**:有些社区开发了针对Ibatis.NET的扩展库,如MyBatis.Impl.Pager,它提供了一个方便的分页助手类,可以简化分页查询的实现。你需要在项目中引用这个库,然后在业务逻辑层调用...

    codeigniter分页类的使用

    CodeIgniter 分页类是框架中用于实现动态分页功能的一个工具类,它极大地简化了在Web应用中处理大量数据分页显示的过程。在CodeIgniter中,分页类允许开发者自定义分页链接的样式、每页显示的记录数以及URL路径等...

    分页AspNetPager

    AspNetPager分页助手类,用法参考博客地址: https://blog.csdn.net/u010108836/article/details/49748691

    MVC分页工具类源码

    10. **PagerBuilder.cs**: 这个类可能是用于构建和配置分页控件实例的工具,它可能提供了一种链式API,使构建分页助手更加灵活和直观。 这些源代码文件共同构成了一个完整的MVC分页解决方案,可以有效地帮助开发者...

    pagination_helper:使用Bootstrap分页类的Codeigniter的简单分页助手

    pagination_helper 使用Bootstrap分页类的Codeigniter的简单分页助手#Instructions控制器中的第一个加载分页库加载分页助手文件调用该函数并传递参数$ uri,$ total_rows,$ per_page,$ segment $ segment =分页...

    HY.DataAccess.rar

    5. **PageHelper**: 分页助手类,通常用于帮助开发者在处理大量数据时进行分页查询,减少对数据库的压力。PageHelper可能会提供如GetPagedData这样的方法,接受查询条件、每页大小和当前页数,返回分页后的结果。 6...

    牛人写的分页程序 分页标签

    - 分页助手:提供计算分页信息和生成分页链接的方法。 - 配置文件:在Struts框架中,配置自定义标签的使用,使其能在JSP页面中调用。 - 示例和测试:可能包含如何在实际项目中使用这个分页标签的示例代码和测试用例...

    C# 常用类库

    10. **PagingHelper**:分页助手类用于处理数据分页,常在Web应用中使用,可以减少数据库查询压力,提高页面加载速度。 11. **WaterMark**:水印类通常用于在图片上添加文本或图形水印,以保护版权或增强视觉效果。...

    自定义通用分页一行代码解决分页问题

    本主题围绕“自定义通用分页一行代码解决分页问题”展开,介绍如何通过提供的BaseDao、PageBean分页工具类以及PageBeanTag助手类实现高效且简洁的分页功能。 首先,`BaseDao`是数据库操作的基类,通常包含了基本的...

    Jquery分页插件中文版

    总的来说,"Jquery分页插件中文版"是开发人员在进行网页数据分页时的得力助手,它简化了开发流程,提升了开发效率,并提供了良好的用户体验。通过深入理解和灵活运用,开发者可以轻松应对各种复杂的分页场景。

    mybatis的分页插件pagehelper-fix+文档

    5. 获取分页结果:查询完成后,可以通过PageInfo类获取到分页信息,包括总页数、总记录数、当前页数据列表等。 PageHelper-Fix版本是PageHelper的修复版,针对原版的一些问题进行了修正和优化,确保在不同场景下的...

    mybatisplus

    MybatisPlus的核心理念是简化开发,它对Mybatis进行了轻量级的封装,主要体现在以下几个方面:自动填充字段、便捷的条件构造、动态SQL、强大的分页功能、一键生成实体类及Mapper接口等。这些特性使得开发者能够更...

    如何实现ListView高效分页代码

    7. **自定义辅助类(如SqlHelper)**:如果使用自定义的数据库访问助手类,需要添加新的方法来处理分页查询。例如,`getPageListByPage`方法应该能够接受分页参数并返回数据表。 通过以上步骤,我们可以实现...

    Mybatis分页插件使用方法详解

    在代码中使用Mybatis分页插件需要设置一个基础的请求类: ```java public class { @Autowired private SqlSessionFactory sqlSessionFactory; public Page&lt;User&gt; selectUserList(int pageNum, int pageSize) { ...

    zendframework留言分页

    - Zend Framework是一个MVC(模型-视图-控制器)架构的PHP框架,它遵循面向对象编程原则,提供了一系列独立且可重用的组件,如路由、控制器、视图助手等。 - 在本项目中,`index.php`是入口文件,负责初始化Zend ...

    pagehelper-fix分页插件

    3. **实体类注解**:如果需要对某个Mapper接口进行分页,需要在对应的实体类上添加`@TableId`和`@TableField`注解。 4. **编写Mapper接口**:在Mapper接口中,添加带有`List`返回类型的查询方法,PageHelper会自动...

    CakePHP中PageHelper的分页应用

    通过使用这个助手类,开发者可以轻松地在视图层设置和显示分页链接,同时在控制器中处理分页逻辑。这极大地减少了代码的重复性,并提高了代码的可读性和维护性。 要开始使用PageHelper,首先需要确保在你的...

    pagehelper 分页

    总结来说,PageHelper是Mybatis的强力助手,它通过简化分页查询的编写过程,提高了开发效率,使开发者能更专注于业务逻辑。在Spring-MVC框架中,结合PageHelper,我们可以轻松实现高效且灵活的分页功能,为用户提供...

Global site tag (gtag.js) - Google Analytics