`

compass简介

阅读更多

下面阐述Compass的一些名词:

1:Resource,Compass对Lucene的Document的抽象,与Alias联系在一起。

2:Property,Compass对Lucene的Field的抽象。通过Compass Converter framework将不是String类型的对象转换为可以索引的Property。

3:RSEM:Resource/Search Engine Mapping,资源搜索引擎影射。

4:Lucene采用IndexReader、Searcher、IndexWriter三个类完成索引搜索的功能。而Compass只有一个简单的接口,能够通过该接口实现所有的操作。

5:事务索引和集成:lucene是非事务性的。无法和事务型的系统进行结合。Compass提供两种提交事务:read_committed 和 serializable。

6:快速更新:lucene中,执行更新必须先删除旧的Document,然后再新建一个Document。由于Compass支持事务索引,因此每个要保存的Resource都必须有一个唯一标识。这样更新的效率会更高。

7: All 支持:在lucene中,没有办法对一个Document的所有的字段进行搜索,要对所有字段进行搜索,必须创建一个包含所有field的一个 "all"field。compass默认地建立一个"all"属性,并且该"all"属性充当默认的搜索Field,当然,"all"property 可以设置成enabled或disabled、重命名或者不充当默认的搜索Property,也可以排除all中的某些属性。

8:索引分块,

来源:http://bbs.xml.org.cn/blog/more.asp?name=lhwork&id=18505

作者: 地狱男爵

compass官方网站: http://www.compassframework.org/

Compass是一流的JAVA搜索框架,可以快速修饰你的应用,使其具备Searchable的能力。

在没有Compass,单纯用Lucene的环境里,一般做法是定期遍历数据库,编码将里面的内容转为索引。

而Compass通过与 Hibernate和 Spring的结合,简单的为Domain Object提供了到Lucene引擎的映射,而且索引库能够随Domain Object同步更新(Data Mirror)。

 

Quick Start

对象/搜索引擎映射(OSEM)

来源:http://www.springside.org.cn/docs/reference/Compass.htm

分享到:
评论
1 楼 transist 2007-01-22  
请帮我看看为什么我的all支持一直无法使用。
我只能逐个field检索,如查找content的包含“精通”,需要使用find("content:精通"),而find("精通")始终找不到符合条件的纪录.
以下是我的配置文件.

<compass-core-mapping package="com.compass.example.domain">
<class name="Book" alias="Book" all="true" >
<id name="id">
<meta-data>id</meta-data>
</id>
<property name="title">
<meta-data exclude-from-all="false"  store="yes" boost="2" index="tokenized">title</meta-data>
</property>
<property name="keyword" >
<meta-data exclude-from-all="false"  store="yes" boost="1.5" index="tokenized">keyword</meta-data>
</property>
<property name="content">
<meta-data exclude-from-all="false" store="false" index="tokenized">content</meta-data>
</property>
</class>
</compass-core-mapping>


我的find方法如此定义的:
    public Compas[] find(String query){
        return getCompassTemplate().findWithDetach(query).getHits();
    }

相关推荐

    compass的几个入门网页

    一、Compass简介 Compass是一个开源项目,由Chris Eppstein开发,它的核心思想是提供一系列预先定义好的样式库和模块,如网格系统、按钮样式、图标集等,这些都可以直接在Sass中调用。Compass与Sass的结合,使得CSS...

    compass对象搜索引擎

    1. **Compass简介** Compass是Java世界中的一款开源搜索引擎工具,它通过元数据映射(Metadata Mapping)机制将应用对象和Lucene索引关联起来,提供了一种透明的搜索支持。这使得开发人员无需深入了解Lucene的底层...

    Compass与Struts2SpringHibernate的整合示例

    一、Compass简介 Compass的核心功能是提供了一个简单易用的API,使得开发者能够方便地在数据库中的对象上添加全文索引。它支持多种数据源,包括关系型数据库(如MySQL、Oracle)、文件系统以及内存。Compass利用...

    Compass.rar

    **Compass简介** Compass是一个开源的、基于Apache Lucene的搜索引擎库,它提供了高级的搜索功能,并且能够与各种持久层框架无缝集成,如Hibernate、JPA和iBatis等。通过使用Compass,开发者可以轻松地在应用程序中...

    基于Compass2.2与Spring 结合建立索引的实例

    #### 一、Compass简介 Compass是一个开源的.NET和Java框架,它为应用程序提供了完整的文本搜索功能。该框架支持多种搜索引擎(如Elasticsearch, Solr等),使得开发人员能够在不深入学习特定搜索引擎的情况下,轻松...

    compass内部分享

    #### Compass简介 **Compass**是一个功能强大、高性能的对象/搜索引擎映射(OSEM)框架,它基于Java语言开发,提供了一个方便的方式来管理和查询索引数据。Compass的主要特点包括: - **搜索引擎抽象层**:提供了...

    sass与compass实战

    #### 二、Compass简介 Compass是一个基于SASS的CSS框架,它提供了一组丰富的工具和功能,可以帮助开发者更快捷地构建高质量的CSS样式表。Compass不仅仅是一个框架,还包含了一系列实用的混合器、组件和其他工具,如...

    S2SH+compass (实现站内全文检索)

    Compass简介** - Compass是基于Apache Lucene的全文搜索引擎,它扩展了Lucene的功能,增加了对持久化的支持,使得数据可以与搜索引擎索引同步。 **3. Compass与S2SH集成** - 配置Compass:首先需要在项目中引入...

    compass教程.pdf

    1. COMPASS WELLPLAN FOR WINDOWS 功能简介:COMPASS 的核心功能包括 PLANNING(设计)、SURVEY(实测计算)和 ANTICOLLISION(防碰计算)。 2. COMPANY SETUP:公司设置允许用户为不同的公司设置基础参数,包括...

    compass_使用详解.pdf compass_教程 compass_试用案例

    ### Compass 使用详解 #### 一、Compass 概述 Compass 是一款开源的 Java 库,用于简化 Lucene 的使用。它通过提供类似于 Hibernate 的对象关系映射(ORM)功能,使得开发者能够更加轻松地将 Java 对象映射到 ...

    Sass和Compass 实战

    #### 一、Sass简介 Sass(Syntactically Awesome Style Sheets)是一种预处理器脚本语言,用于扩展CSS的功能。它为CSS增加了诸如变量、嵌套规则、混合器(mixins)、继承、函数等功能,使开发者能够写出更加简洁、可...

    Pre-Processador-CSS --- Sass-Compass:Aplicaçãodopré-processadorSass com o框架Compass

    **Sass与Compass简介** Sass(Syntactically Awesome Style Sheets)是一种CSS预处理器,它扩展了CSS的功能,提供了变量、嵌套规则、混合(mixin)、函数等高级特性,使得CSS编写更加简洁、模块化。Sass有两种语法...

    效率源Data Compass RAID 5EE 数据恢复案例教程-自动设置方式.doc

    一、RAID简介 RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)是一种通过将多个硬盘组合,实现数据冗余和性能提升的技术。最初由D.A.Patterson教授提出,目的是通过廉价磁盘的组合提供数据保护和...

    compass项目一期工作排期计划表.pdf

    甘特图简介 甘特图是一种常用的项目管理工具,它通过条形图来展示项目的任务进度,帮助项目管理者直观地了解项目进度、资源配置以及任务之间的依赖关系。甘特图通常包含以下要素: - **任务名称**:明确各个任务。 ...

    Compass_test:发行说明

    1. `README.md`:这是一个Markdown格式的文件,通常会提供项目简介、安装步骤、使用示例以及开发者信息。 2. `package.json`:这是Node.js项目的核心配置文件,包含了项目依赖的npm模块及其版本信息。 3. `index.js`...

    Compass响应式个人展示网站模板

    4. **关于我/关于我们**:这部分用于讲述个人背景、经历、团队成员或者企业简介。通过故事性的叙述,帮助访客建立对个人或品牌的认知和信任。 5. **联系**:联系页面通常包含联系方式(如电子邮件、电话、地址等)...

    Mastering SASS

    #### CSS与SASS简介 本书《Mastering SASS》旨在帮助读者深入了解SASS(Syntactically Awesome Style Sheets)及其相关工具Compass的使用方法,通过逐步介绍如何利用这些工具来提升CSS的编写效率和代码质量。SASS是...

    ntu-vote-compass:为NTU投票配置了* .md的指南针

    test.md :配置指南针的核心,包括简介和评估。 请参阅HOWTO.md (WIP)中的更多描述。 result.csv :候选者的数据集。 第一行包含字段名称(包括name和number ,它们是必填字段,以及与test.md的评估相对应的键。...

    Android系统下sensor驱动架构简介及使用说明[参照].pdf

    "Android系统下sensor驱动架构简介及使用说明" Android系统下的sensor驱动架构是指在Android操作系统中对各种sensor的驱动程序的架构设计和实现。该架构的主要目的是为了解决不同的sensor驱动程序的共性和差异问题...

    MongoDB的Linux安装、基本操作、可视化、实验源码与报告文档

    #### 一、MongoDB简介与特点 MongoDB是一款基于分布式文件存储的开源NoSQL数据库系统,以其高性能、高可用性及自动化的扩展特性著称。它支持多种数据模型,如文档、图形等,非常适合处理大量非结构化或半结构化数据...

Global site tag (gtag.js) - Google Analytics