`
yangjueshe
  • 浏览: 6097 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

sql分页 springmvc和displaytag实现

    博客分类:
  • Java
阅读更多

分页原理

两部分组成

  1. 分页导航信息
  2. 每个页面的数据查询语句信息

实现这个功能,需要查询的信息:

 

    1. 总记录数:resultSize
    2. 每页显示的记录数:pageSize
    3. 当前的页码:pageIndex
    4. 总页数(需要显示的时候),这是个分页内部的一个属性,有resultSize -1 / pageSize+1得到

 

  不管是哪种实现,上述信息具备即可。
  下面使用displaytag 标签,DisplayTag是一个非常好用的表格显示标签,适合MVC模式,其主页在http://displaytag.sourceforge.net

 

 

     sql的分页 pageIndex = ( pageIndex -1 ) * pageSize

    1. mysql 使用limit 

 

  select * from users limit pageIndex, pageSize

   

    2. oracle 使用 rownum

   

select * from (
	  select a.*, rownum num from (
		select * from users order by name desc) a
	  where rownum <= (pageSize + pageIndex) ) 
      where num >= pageIndex

 

    界面实现

    1. 显示页码 jsp

    

<%@ taglib prefix="display" uri="http://displaytag.sf.net/el" %>
	
   <display:table name="userList"  pagesize="10" requestURI="user.do"  sort ="external" 

id ="row" partialList ="true"  size ="resultSize">
		<display:column property ="userid"  title ="编号"/>
		<display:column property ="username"  title ="用户名"/>
		<display:column property ="email"  autolink="true" title ="邮箱"/>
		<display:column title="操作">
			<a href="user.do?action=delete&id=<c:out value="${row.userid}"/>">删除</a>
		</display:column>
   </display:table>

 

   说明
   table中属性
   name="userList" 将记录集存在session或者request中的键值
   pagesize="10"   每页显示10条数据
   sort="external"  外部排序
   id="row"   表格id值,用于程序得相关的参数
   partialList="true"  分段从数据库中读数据
  
   column中属性
   autolink="true" 自动生成链接 email或者url
   其他一些属性可以参考自带的例子 

 

   2. controller (user.do) springmvc

  

Map model = new HashMap();
        //页数的参数名
        String pageIndexName = new ParamEncoder("row")
                .encodeParameterName

(org.displaytag.tags.TableTagParameters.PARAMETER_PAGE);
        // 每页显示的条数 
        int pageSize = 10;
        // 当前页
        int pageIndex = LotteryUtil.isEmpty(request.getParameter(pageIndexName)) ? 0 : 

(Integer
                .parseInt(request.getParameter(pageIndexName)) - 1);
        //总记录
        int resultSize = userService.getAllUserCount();
        //显示所有
        List<User> userList = userService.getUsers(pageIndex, pageSize);

        model.put("resultSize", resultSize);
        model.put("userList", userList);
        return new ModelAndView("userList", model);

  

    上面是使用springmvc实现的,其他的实现类似

分享到:
评论
2 楼 hcjhuanghe 2010-06-04  
对于大数据分页有何坏处,可否解释一下,多谢、
1 楼 yangjueshe 2010-04-04  
自己占楼
displaytag对于小数据的分页还是很不错的!

相关推荐

    spring+springMVC+mybatis+easyui 增删查改以及分页源码

    描述了一个使用SSM(Spring、SpringMVC、MyBatis)框架与EasyUI前端库联合实现的Web应用项目,特别是关注于CRUD(创建、读取、更新、删除)操作和无刷新分页功能。下面将详细阐述这些知识点。 **Spring框架** 是一...

    基于springmvc实现分页查询

    本篇文章将详细探讨如何基于Spring MVC实现分页查询,这对于任何处理大量数据的Web应用都是至关重要的。 首先,理解分页的基本概念。分页是将大型数据集划分为较小、更易管理的部分,以提高用户体验并减少服务器...

    Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码.zip

    Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码,SSM+Vue的学生管理系统。 Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码,SSM+Vue的学生管理系统。 Java基于Spring+SpringMVC+...

    springmvc+mybaits实现分页 查询功能 带数据库

    "springmvc+mybaits实现分页 查询功能 带数据库"项目涵盖了Web应用开发的核心技术,包括MVC架构、数据库操作和分页查询。通过SpringMVC和MyBatis的结合,我们可以高效地处理数据请求,同时通过合理的数据库设计和...

    springmvc+mybatis+分页查询

    在本项目中,我们主要...综上所述,这个项目展示了如何在Spring MVC和MyBatis框架下实现一个完整的Web应用,通过PageHelper插件轻松实现分页查询功能。理解并掌握这些知识点,对于开发基于Java的Web应用是非常重要的。

    基于SpringMVC Mybatis框架实现分页

    在本项目中,我们主要探讨如何在SpringMVC和Mybatis框架中实现分页功能,同时结合RESTful API设计原则来构建一个高效、易用的Web应用。分页是大型Web应用不可或缺的一部分,它能够有效地管理和展示大量数据,提高...

    springMVC+mybatis实现分页、登录、增删改查

    在IT行业中,SpringMVC和MyBatis是两个非常重要的框架,它们被广泛应用于构建企业级Web应用。本文将深入探讨如何使用这两个...通过熟练掌握这两者,以及相关的分页和权限控制技术,可以有效地提高开发效率和应用质量。

    springmvc mybatis 分页查询

    在SpringMVC和MyBatis的集成下,实现分页查询通常涉及以下几个步骤: 1. 创建MyBatis的Mapper接口和XML配置文件,定义分页查询的SQL语句,包括选择特定范围的数据和计算总记录数。 2. 在Service层,通过MyBatis的...

    基于SpringMVC+Hibernate实现的在线购物商城.zip

    基于springmvc+Hibernate实现的在线购物商城.zip基于springmvc+Hibernate实现的在线购物商城.zip基于springmvc+Hibernate实现的在线购物商城.zip基于springmvc+Hibernate实现的在线购物商城.zip基于springmvc+...

    springMVC和ibatis实现sql2005数据库插入案例

    - 创建UserService接口和实现类,定义业务逻辑,如`void addUser(User user);` - 在实现类中注入Mapper,调用其insert方法插入数据。 7. **Controller层** - 创建UserController,定义处理HTTP请求的方法,如`@...

    SpringMVC+Mybatis实现权限管理

    在IT行业中,SpringMVC和Mybatis是两个非常重要的框架,它们在开发企业级Web应用时起到了关键作用。本文将详细解析如何利用这两个框架实现权限管理,为开发者提供一个完整的学习案例。 首先,SpringMVC是Spring框架...

    SpringMVC+MySQL实现的分页小项目

    在本项目中,"SpringMVC+MySQL实现的分页小项目",我们将探讨如何结合SpringMVC框架和MySQL数据库来构建一个具有分页功能的Web应用。SpringMVC是Spring框架的一个模块,专为处理HTTP请求和响应而设计,而MySQL则是一...

    springMVC+mybatis实现登录和增删改查

    在本项目中,"springMVC+mybatis实现登录和增删改查"是一个典型的Web应用程序,它结合了SpringMVC、MyBatis两大主流框架,以及Bootstrap前端库,来构建一个用户友好的数据管理平台。以下是这个项目涉及到的主要知识...

    springMVC实现分页代码Mysql版本的

    提供的`springMVC实现分页代码,一个简单的例子`文件很可能是这个过程的一个具体示例,包含了控制器、服务、模型等部分的代码,可以作为学习和参考的模板。在实际开发中,还需要考虑错误处理、安全性以及用户体验等...

    javaee-SpringMVC-Mybatis 分页插件

    本项目“javaee-SpringMVC-Mybatis 分页插件”显然是一个结合了这三个框架实现的分页功能示例。下面我们将深入探讨这些技术及其分页插件的应用。 1. **JavaEE**:JavaEE(Java Platform, Enterprise Edition)是...

    springmvc+mybatis通用分页

    总的来说,整合SpringMVC和MyBatis并实现通用分页,需要理解这两个框架的工作原理,掌握它们的配置,以及如何在Java代码中使用它们。同时,对于分页功能,需要理解数据库的分页机制,并能将其应用到实际的SQL查询中...

    springmvc+mybatis+分页整合

    通过以上步骤,我们可以实现一个集成了SpringMVC、MyBatis和分页功能的Web应用。这样的整合提供了良好的结构化开发环境,使得代码更易于维护和扩展。在实际项目中,还可以结合其他工具和框架,如Spring Security进行...

    mybatis+springmvc分页

    总的来说,"mybatis+springmvc分页"项目展示了如何在Java Web开发中集成Mybatis和SpringMVC来实现高效、便捷的数据操作,特别是针对大量数据的分页展示。通过这个项目,开发者可以学习到数据库操作、MVC架构、以及...

    easyui分页、springmvc后台处理分页

    本项目重点介绍了如何结合EasyUI前端框架和SpringMVC后端框架实现高效的分页处理。下面将详细阐述相关知识点。 首先,EasyUI是一个基于jQuery的UI组件库,提供了丰富的界面元素,如表格、表单、分页等,使得开发者...

    java实现es sql分页,采用SSM架构实现,开箱即用

    同时,为了更好地适应SSM的开发模式,我们可以编写MyBatis的Mapper接口和XML配置文件,使用自定义注解或者动态SQL来实现分页查询。 最后,为了实现“开箱即用”,我们需要确保代码的可复用性和灵活性。可以设计一个...

Global site tag (gtag.js) - Google Analytics