`
chennaid2
  • 浏览: 53228 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
  • b_l_east: 在主动模式下,如果有多个客户端,服务器对每一个客户端均使用20 ...
    ftp

llucene 3.0 分页和高亮显示

阅读更多

package com.cee.com;

import java.util.List;

//分页类
public class PageBean {

 private List list; // 要返回的某一页的记录列表
 private int allRow; // 总记录数
 private int totalPage; // 总页数
 private int currentPage; // 当前页
 private int pageSize; // 每页记录数
 private int offset;

 public int getOffset() {
  return offset;
 }

 public void setOffset(int offset) {
  this.offset = offset;
 }

 private boolean isFirstPage; // 是否为第一页
 private boolean isLastPage; // 是否为最后一页
 private boolean hasPreviousPage; // 是否有前一页
 private boolean hasNextPage; // 是否有下一页

 public List getList() {
  return list;
 }

 public void setList(List list) {
  this.list = list;
 }

 public int getAllRow() {
  return allRow;
 }

 public void setAllRow(int allRow) {
  this.allRow = allRow;
 }

 public int getTotalPage() {
  int totalPage = allRow % pageSize == 0 ? allRow / pageSize : allRow
    / pageSize + 1;
  return totalPage;
 }

 public void setTotalPage(int totalPage) {
  this.totalPage = totalPage;
 }

 public int getCurrentPage() {
  return currentPage;
 }

 public void setCurrentPage(int currentPage) {
  this.currentPage = currentPage;
 }

 public int getPageSize() {
  return pageSize;
 }

 public void setPageSize(int pageSize) {
  this.pageSize = pageSize;
 }

 /** */
 /**
  * 初始化分页信息
  */
 public void init() {
  this.isFirstPage = isFirstPage();
  this.isLastPage = isLastPage();
  this.hasPreviousPage = isHasPreviousPage();
  this.hasNextPage = isHasNextPage();
 }

 /** */
 /**
  * 以下判断页的信息,只需getter方法(is方法)即可
  *
  * @return
  */

 public boolean isFirstPage() {
  return currentPage == 1; // 如是当前页是第1页
 }

 public boolean isLastPage() {
  return currentPage == totalPage; // 如果当前页是最后一页
 }

 public boolean isHasPreviousPage() {
  return currentPage != 1; // 只要当前页不是第1页
 }

 public boolean isHasNextPage() {
  if(totalPage==0){
   return false;
  }else{
   return currentPage != totalPage; // 只要当前页不是最后1页
  }
  
 } /** */
 /**
  * 计算总页数,静态方法,供外部直接通过类名调用
  *
  * @param pageSize
  *            每页记录数
  * @param allRow
  *            总记录数
  * @return 总页数
  */
 public static int countTotalPage(final int pageSize, final int allRow) {
  int totalPage = allRow % pageSize == 0 ? allRow / pageSize : allRow
    / pageSize + 1;
  return totalPage;
 }

 /** */
 /**
  * 计算当前页开始记录
  *
  * @param pageSize
  *            每页记录数
  * @param currentPage
  *            当前第几页
  * @return 当前页开始记录号
  */
 public static int countOffset(final int pageSize, final int currentPage) {
  final int offset = pageSize * (currentPage - 1);
  return offset;
 }

 /** */
 /**
  * 计算当前页,若为0或者请求的URL中没有"?page=",则用1代替
  *
  * @param page
  *            传入的参数(可能为空,即0,则返回1)
  * @return 当前页
  */
 public static int countCurrentPage(int page) {
  final int curPage = (page == 0 ? 1 : page);
  return curPage;
 }

 public static int lastSqlIdx(int rowStartIdx, int pageSize) {
  return rowStartIdx + pageSize;
 }
}

分享到:
评论

相关推荐

    Lucene3.0 使 用 教 程

    通过学习Lucene3.0 使用教程,开发者能够掌握全文检索的基本原理和技术,为自己的应用系统添加高效、准确的搜索功能。这不仅限于网站内部,也可以应用于桌面应用程序、帮助系统等多种场景。随着技术的深入,开发者还...

    Lucene3.0做的文件搜索

    除了搜索,Lucene还提供了一些其他功能,如文档的增删改查、多字段搜索、排序、分页、高亮显示搜索结果等。此外,它还可以与其他Apache项目如Solr和Elasticsearch集成,以构建更复杂的搜索引擎解决方案。 总之,...

    基于lucene3.0的搜索器源程序

    5. 结果展示:处理搜索结果,包括排序、分页和高亮显示匹配的关键词。 三、部署到Tomcat等服务器 为了在Web环境中使用Lucene搜索器,我们需要将其部署到像Tomcat这样的Servlet容器中。首先,确保服务器环境中已经...

    自己写的lucene分页高亮显示代码

    本压缩包中的代码着重展示了如何使用 Lucene 进行分页搜索和结果高亮显示。下面将详细解释这两个关键知识点。 **一、Lucene 分页搜索** 在大型数据集上进行搜索时,一次性返回所有结果并不实际,因此分页搜索显得...

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--dic

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--news.part2

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part1

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--news.part1

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...

    .net mvc3.0分页(包含AJAX分页)

    自己写的MVC3.0分页代码。自己可以在我源代码上修改。包含AJAX分页。启用AJAX分页的话请查看我源代码的实例。 具体逻辑请查看我的源代码。很简单的。我相信一般人都能看懂。 分页代码由 Models 里的 INetMvc3Page....

    SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--data

    本项目结合了这些技术,实现了分页、排序和高亮显示等功能,旨在为用户提供更高效、友好的搜索体验。下面将详细介绍这些知识点: 1. SSH框架: - **Spring**:Spring作为核心容器,管理着应用的Bean,提供了依赖...

    Lunene分页关键字高亮显示

    标题 "Lunene分页关键字高亮显示" 暗示了我们正在讨论一个与搜索引擎或数据检索相关的项目,其中涉及到了Lunene(可能是Lucene的误拼),一种广泛使用的全文搜索引擎库,以及如何在搜索结果中实现分页和关键字高亮。...

    flex+actionScript3.0分页技术

    flex+actionScript3.0分页技术 也可以直接从第几页查看

    .NET+jQuery 实现局部刷新+分页+高亮显示搜索内容

    在.NET和jQuery技术栈中,实现局部刷新、分页以及高亮显示搜索内容是一项常见的功能需求,尤其在构建数据密集型Web应用时。这个功能可以让用户在不重新加载整个页面的情况下获取新数据,提高用户体验,并且能快速...

    Java API整合ES实现深分页,高亮等操作.zip

    本压缩包文件"Java API整合ES实现深分页,高亮等操作.zip"可能包含了一个Java应用程序,该程序展示了如何使用Java API来实现Elasticsearch的高级功能,如深度分页和高亮显示。深度分页是指在大数据量下,能够有效地...

    spring2.5+struts2.0+hibernate3.0分页

    本项目基于经典的Java企业级开发框架——Spring 2.5、Struts 2.0和Hibernate 3.0实现了一个分页功能。下面我们将详细探讨这三个框架以及它们如何协同工作来实现分页。 首先,Spring 2.5是IoC(Inversion of Control...

    使用Lucene4.7实现搜索功能,分页+高亮

    标题中的“使用Lucene4.7实现搜索功能,分页+高亮”表明我们要讨论的是如何利用Apache Lucene 4.7版本来构建一个具备搜索、分页和高亮显示功能的系统。Lucene是一个高性能、全文本搜索引擎库,它提供了强大的文本...

    SpringMVC3.0+MyIbatis3.0(分页示例

    本示例聚焦于如何在SpringMVC 3.0和MyBatis 3.0环境中实现分页功能,这在处理大量数据时尤其重要,能够提高用户体验并减轻服务器压力。 **SpringMVC 3.0** SpringMVC是Spring框架的一部分,它是一个基于模型-视图-...

    lucene查询结果集分页代码

    在lucene搜索分页过程中,可以有两种方式 一种是将搜索结果集直接放到session中,但是假如结果集非常大,同时又存在大并发访问的时候,很可能造成服务器的内存不足,而使服务器宕机 还有一种是每次都重新进行搜索,这样...

Global site tag (gtag.js) - Google Analytics