java项目中数据库分页有以下三种常见形式:
1.结合数据库产品自身特点的sql语句,优点效率最高,缺点兼容性差,更换数据库产品,所有sql语句需要重新写
以salserver为例适用于 SQL Server 2005
SELECT TOP 页大小 *
FROM
(
SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM table1
) A
WHERE RowNumber > 页大小*(页数-1)
页大小:每页的行数;页数:第几页。使用时,请把“页大小”和“页大小*(页数-1)”替换成数字。
2、使用数据库游标分页,优点适合所有数据库,缺点不适合大数据量查询
page第几页,pagesize页大小
public List<AdminDTO> findAll(int page,
int pageSize) throws SQLException {
List<AdminDTO> list = new ArrayList<AdminDTO>();
//ResultSet.CONCUR_READ_ONLY 不能用结果集更新数据库中的表。
//ResultSet.TYPE_SCROLL_INSENSITIVE 结果集的游标可以上下移动,当数据库变化时,当前结果集不变
PreparedStatement ps = con.prepareStatement("select ad.id,ad.adminName,ad.adminPass,ad.roleId,r.rolerName from adminInfo ad,roler r where ad.roleId=r.roleId",
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
ResultSet rs = ps.executeQuery();
int position = (page - 1) * pageSize;
rs.absolute(position);
int count = 0;
while (rs.next() && count < pageSize) {
count++;
AdminDTO dto = new AdminDTO();
dto.setId(rs.getInt("id"));
dto.setAdminName(rs.getString("adminName"));
dto.setAdminPass(rs.getString("adminPass"));
dto.setRoleId(rs.getInt("roleId"));
dto.setRolerName(rs.getString("rolerName"));
list.add(dto);
}
return list;
}
3、使用缓存,一次性从数据库查询出所有记录,存放到缓存里面,然后用list集合划分,优点简单,缺点占用系统内存,影响系统性能,故一般没人使用
分享到:
相关推荐
"ACCESS数据库分页显示"这个主题涉及到了如何有效地处理大量数据,使其在用户界面上以分页的形式进行显示,这样可以提高用户体验并减少系统资源的消耗。 在Access数据库中,分页显示通常涉及到SQL查询和前端用户...
数据库分页是Web开发中一个重要的技术,它用于在用户界面上展示大量数据时,将结果集分成多个小块(页)以便用户逐页浏览。这样不仅提高了用户体验,避免一次性加载过多数据导致页面响应变慢,还有效地节省了服务器...
数据库分页技术是数据库管理系统中用于处理大量数据查询时,以分批次的形式返回结果集的一种策略,这在网页展示或者数据分析中尤其重要。本篇资料主要介绍了在MySQL、SQLServer2000/2005和Oracle这三种主流数据库中...
MFC数据库分页显示控件是MFC框架下的一种实用功能,主要用于处理大量数据时的高效显示。这种控件允许用户以分页的形式查看数据库中的数据,提高用户体验并减轻系统资源负担。 首先,我们要理解MFC如何与数据库交互...
接下来,AspNetPager分页控件是一种专门用于分页的控件,它提供了一种简单的方式来实现数据集的分页显示。AspNetPager控件可以轻松地集成到任何数据绑定控件中,如DataList,以实现数据的分页浏览。它支持多种分页...
在Web开发中,分页是一种常见的技术,用于管理展示给用户的大量数据。通常,数据被分成多个页面,每个页面显示固定数量的数据记录。这种方式能够减少单个页面上的数据量,提高加载速度,使用户更容易浏览和查找所需...
压缩包中的“pages”文件可能包含了实际运行分页功能的页面效果截图,可以帮助你直观理解分页的展示形式,如:页码导航、当前页显示等。 总结,PHP分页是一个实用且常见的功能,涉及数据库查询、URL参数处理和HTML...
public Pagi()//定义构造器,初始化每页显示的主题数和数据库的连接。 { intPageSize=4; //每页显示的记录数目 db = new DB(); } //Countsql:总记录的Query字符串。[形式为select count(*) from tablename] //...
在这个项目中,我们关注的是“datalist2种分页样式源码源数据库”,它提供了两种分页样式:数字分页,模仿了百度和Google的分页效果,并且附带了源代码和源数据库。这个解决方案旨在实现一个无需额外控件的分页功能...
1. **MVC框架**:MVC是一种流行的设计模式,将应用程序分为模型(Model)、视图(View)和控制器(Controller)三个部分,分离了业务逻辑、数据处理和用户界面。 2. **Spring MVC**:在Java世界中,Spring MVC是...
在IT行业中,分页是网页或应用程序中非常常见的一种数据展示方式,特别是在处理大量数据时。"显示分形式分页"通常指的是将大量的记录分成多个小部分,每次只加载一部分到用户界面,以提高用户体验并优化性能。这种...
分页原理:利用ID大于多少和SELECT TOP分页语句形式:SELECT TOP 页大小 * FROM 表名 WHERE (ID >(SELECT MAX(id) FROM(SELECT TOP 页大小*页数 id FROM 表名 ORDER BY id) AS T)) ORDER BY id
本文详细介绍了 MySQL 海量数据库的查询优化和分页算法方案,包括查询优化的原理、SARG 的定义和形式、非 SARG 形式的语句、分页算法等。通过这些方法,可以提高 MySQL 海量数据库的查询效率和性能。
在这个系统中,分页功能有两种形式: 1. 数字链接分页:这种方式直观地显示了所有可用的页面,如"12345"。用户可以直接点击数字跳转到相应的页面,适合于总页数较少的情况,用户能快速定位到所需页面。 2. 上一页/...
2. Access数据库分页显示: 在数据库应用中,分页显示是一种常见的用户界面设计,它能帮助用户更有效地浏览大量数据,避免一次性加载所有数据导致的性能问题。在易语言中,可以通过连接Access数据库,使用SQL查询...
### Oracle通用数据库存储过程代码——高效分页存储过程解析 ...以上存储过程的实现不仅提供了一个高效、灵活的分页查询方案,还通过参数化的形式增强了其可复用性和扩展性,非常适合在Oracle数据库环境中应用。
Delphi dbgrideh分页实例 带Access数据库,delphi7 关联adoquery实现dbgrid与dbgrideh的分页显示功能,提高多条数据的查询效率。分页原理:利用ID大于多少和SELECT TOP分页。 语句形式:SELECT TOP 页大小 * FROM ...
视图则负责展示模型中的数据,它可以是表格、列表或任何其他形式的用户界面元素。模型视图架构的优势在于它解耦了数据和显示,使得数据操作和界面更新可以独立进行,从而提高了代码的可复用性和可维护性。 要实现...
### 用SQL实现分页的三种方法 在数据库管理中,分页是一项常见的需求,尤其在处理大量数据时,能够有效地提升用户体验并减轻服务器负担。本文将详细介绍如何使用SQL实现分页功能,并针对三种不同的分页策略进行深入...
总的来说,VS.NET 2005 提供了丰富的工具和类库来实现Winform应用程序中的数据库分页功能。通过理解DataGridView控件,掌握ADO.NET的基本用法,以及灵活运用SQL查询,开发者可以创建出高效且用户友好的数据展示界面...