`
enica
  • 浏览: 71422 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

jforum中的 lucene

阅读更多
(1)通过JForumBaseServlet类中的startApplication方法,启动了ConfigLoader.startSearchIndexer();
(2)ConfigLoader类中的startSearchIndexer,执行了SearchFacade.init()
public static void startSearchIndexer()
{
SearchFacade.init();
}
(3)SearchFacade类,
主要是创建了静态类SearchManager;
执行了searchManager.init();
(4)接口类 interface SearchManager
class LuceneManager implements SearchManager
LuceneManager类:
创建了3个 类:
private LuceneSearch search;
private LuceneSettings settings;
private LuceneIndexer indexer;
这样在初始化的过程中,需要的类基本上都用到了。

(5)然后在类GenericPostDAO(主要负责帖子的创建、删除、更新)中
public int addNew(Post post)
{
try {
this.addNewPost(post);
this.addNewPostText(post);

// Search
SearchFacade.create(post);

return post.getId();
}
catch (Exception e) {
throw new DatabaseException(e);
}
}
增加一个帖子,此时使用SearchFacade.create(post);
(6)进入SearchFacade.create(post),
public static void create(Post post)
{
if (isSearchEnabled()) {
searchManager.create(post);
}
}
(7)进入searchManager.create(post);
调用 LuceneManager 中的 create方法:
public void create(Post post)
{
this.indexer.create(post);
}
(8) LuceneIndexer中的create方法:
public void create(Post post)
{
Document document = this.createDocument(post);
writer.addDocument(document);
}
进行索引。
删除、更新索引等操作最后都是通过LuceneIndexer类中的方法完成的。

分享到:
评论

相关推荐

    jforum 源码

    JForum内置了全文搜索引擎,通过Lucene库实现。源码中可以研究如何创建索引、执行查询以及优化搜索性能。 8. **缓存机制** 为了提高性能,JForum使用了缓存策略,例如EhCache。通过分析源码,你可以了解到如何...

    基于Java的论坛系统 JForum.zip

    在JForum中,模型处理业务逻辑和数据管理,视图负责展示用户界面,而控制器则协调模型和视图之间的交互,提高了代码的可重用性和模块化。 **2. Java Servlet和JSP** Java Servlet是用于扩展服务器功能的Java类,JSP...

    Java论坛系统 JForum

    文件"rafaelsteil-jforum3-f4814b8"可能是指JForum的一个特定版本,由开发者Rafael Steil贡献,版本号为f4814b8,这表明它是源代码版本控制系统中的一个提交标识,用于追踪项目的变更历史。 综上所述,JForum是一个...

    java基于主题搜索的知识管理系统设计与实现

    首先,我们需要理解Java作为编程语言在知识管理系统中的角色。Java以其跨平台性、稳定性和丰富的类库闻名,是开发此类系统的理想选择。Java的面向对象特性使得代码结构清晰,易于维护和扩展,适合大型复杂系统的开发...

    java开源包1

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包11

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包2

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包3

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包6

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包5

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包10

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包4

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包8

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包7

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包9

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包101

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    Java资源包01

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    18个 Java开源 CMS系统 一览 1

    12. **JetNuke**:JetNuke是一款从PHPNuke移植而来的Java网站CMS系统,遵循GNU许可,具有丰富的主题风格和预设模板,内置Web管理界面,与JForum等软件兼容良好,使用FCKEditor WYSIWYG HTML编辑器。详情参阅...

    JAVA上百实例源码以及开源项目源代码

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

Global site tag (gtag.js) - Google Analytics