public class Paging extends AbstractList<String> {
private List<String> list;
private int size = 0;
public Paging(WebApp application) {
//判断WebApp中是否已经存在了要调用的数据
if(application.getAttribute("list")==null){
list=getList();
application.setAttribute("list", list);//加入WebApp中
}else{
//判断数据是否过期
if(application.getAttribute("data_flag").equals("true")){
list=(List)application.getAttribute("list");
}else if(application.getAttribute("data_flag").equals("false")){
//过期数据就重新调用一次,并把对象保存在WebApp中
list=getList();
application.setAttribute("list", list);
}
}
size=list.size();
}
//生成1000条测试数据
public List<String> getList() {
if (list == null)
list = new ArrayList<String>();
for (int i = 0; i < 1000; i++) {
list.add("" + i);
System.out.println(i);
}
return list;
}
@Override
public String get(int arg0) {
// TODO Auto-generated method stub
return list.get(arg0);
}
@Override
public int size() {
// TODO Auto-generated method stub
return size;
}
如果用paging分页的话,我想大家也对大数据量读取敢感到空或,要是自己去写分页又很麻烦,所以我就想到了这个解决办法,这样可以减少数据的读取次数
也能加快访问速度,应为保存在WebApp中的对象是在内存当中,所以在第二次读取的时候就可以从内存中取,而不是在去读取数据库数据了。这样就可以大大
的优化paging的性能了。
为了保证不读取过期数据,所以在读取WebApp中的存放的Object时,加了一个判断。
只要大家在update,insert,delete操作中把data_flag改为false,让数据重新读取一次就可以了。
毕竟update,insert,delete操作比起select要少的多。要是数据量很大的话,为了不消耗太多的内存,也可以把对象序列化到磁盘上。
要是很注重性能的话,最好还是动态的去添加页面数据。
我很喜欢zk希望可以和大家一起分享。
分享到:
相关推荐
Oracle数据库性能优化是一个复杂而关键的过程,特别是在处理大规模数据时,优化显得尤为重要。本文主要针对Oracle数据库在公交IC卡电子收费系统中的应用进行探讨,提出了性能优化的一些原则和方法。 首先,性能监控...
6. **高性能**:通过优化数据处理机制,PagingGrid可以在保持良好用户体验的同时处理大量数据。 在PagingGrid的实现中,`pagingGrid.js` 文件很可能是该组件的核心JavaScript代码。此文件可能包含了PagingGrid的...
《关系型数据库应用的性能优化——基于SQL Server平台》 关系型数据库在现代信息系统中扮演着核心角色,而SQL Server作为广泛使用的数据库管理系统,其性能优化对于提升整体系统效率至关重要。本文将深入探讨如何在...
**Paging Data in Java** 在Java开发中,数据分页是一种常见的优化技术,尤其是在处理大量数据集合时。...在实际项目中,我们需要根据需求和所使用的框架选择合适的分页策略,并注意优化以避免性能瓶颈。
Android Paging Library 是Google推出的一个强大的分页加载框架,它与RecyclerView紧密集成,旨在优化移动设备上的数据加载体验,减少内存占用并提升应用性能。Paging Library使得开发者能够以流式方式加载数据,只...
综上所述,本文介绍了4FSK软件解码器在Flex Paging Decoder中的设计与实现,重点讨论了解码板的功能、硬件设计及软件设计等内容,并通过比特错误率、噪声功率等参数的测量,全面评估了解码器的性能。该研究对于提高...
这两者都是为了提高内存利用率和优化系统性能的重要组成部分。 **1. 文件内存管理** 对于每个文件,内核使用 `struct address_space` 结构来进行管理。该结构有两个主要功能: 1. **页面管理**:文件中所有已经被...
1.1 AIX 5L 内存性能优化之AIX Version 5.3 中内存的概述以及内存参数的优化 3 1.2 AIX 5L 内存性能优化之使用 ps、sar、svmon 和 vmstat 监视内存的使用 7 1.3 AIX 5L 内存性能优化之配置和管理交换空间,优化(VMM) ...
8. **性能优化**:为了提高性能,插件可能会实现智能加载策略,如懒加载或预加载,只在必要时加载相关数据。 在这个"jQuery-Paging-master"目录中,我们可能找到以下文件和目录结构: - `js/`:存放分页插件的...
延迟加载视口(Lazy Viewport)是一个策略,当用户滚动到表格的边缘时,才开始加载新的数据行,以此优化性能。这种技术对于大型数据集尤其有用,因为它确保只有在需要时才会加载数据,降低了内存占用。 `...
在2.2.0版本中,z-paging可能已经进行了优化和增强,以提供更好的性能和用户体验。具体更新内容通常会在`changelog.md`文件中记录,包括新功能的添加、已知问题的修复、性能提升等方面。这个文件对于开发者来说非常...
6. **性能优化**:通过仅加载当前页数据,减少内存占用和提升应用程序响应速度。 在提供的压缩包文件中,我们有以下几个关键文件: 1. **PagingGridTest.sln**:这是Visual Studio的解决方案文件,包含了项目的...
4. **性能优化**:ulule-paging可能包含了一些性能优化策略,比如预估总记录数,避免每次请求都进行全表扫描,或者使用LIMIT和OFFSET在大型数据集上的优化。 5. **易于扩展**:由于ulule-paging的设计是模块化的,...
【ASP.NET 2.0 网站应用程序的性能优化】 在软件开发中,尤其是在ASP.NET 2.0环境中,创建高效能的网站应用程序是一项关键任务。为了达到这个目标,开发者需要关注多个方面,包括执行时间、响应时间、伸缩性和吞吐...
5. SQL查询优化:在数据库层面,可以使用`LIMIT`和`OFFSET`语句进行分页查询,但`OFFSET`在大数据量下可能会导致性能问题。更优的解决方案是使用`ROW_NUMBER()`、`RANK()`或`DENSE_RANK()`等窗口函数,配合`WHERE`...
7. **优化性能**:为了进一步提高性能,可以考虑使用LCDS的优化特性,如数据压缩、延迟加载和缓存策略。同时,合理设计数据模型和减少不必要的数据传输也能显著提升应用性能。 通过以上步骤,你可以在Flex应用程序...
然而,在某些场景下,即使SAP应用已被调整至适合系统主存大小,用户仍可能遇到高分页(paging)活动的现象,这主要表现为当触发文件系统备份或类似操作时,系统响应时间显著增加,导致性能下降。此现象在SUSE Linux ...
"vgolive.search.PagingGrid v1.0 源码"是一个基于Dojo 1.4.x框架的分页组件,专为处理大量数据集而设计,它旨在提高用户体验并优化网页性能。这个组件兼容dojo.data和dojox.data接口,能够与各种类型的数据集格式...
段页式管理是一种操作系统内存管理的方法,它结合了分段和分页两种技术,以提供更灵活和安全的内存分配机制。...在深入理解这种机制后,我们可以更好地设计和优化操作系统,提高其性能和资源利用率。