<?xml version="1.0" encoding="UTF-8"?>
<compass-core-config xmlns="http://www.opensymphony.com/compass/schema/core-config"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.opensymphony.com/compass/schema/core-config http://www.opensymphony.com/compass/schema/compass-core-config.xsd">
<compass name="default">
<connection>
<file path="/${user.home}/compass" />
</connection>
<searchEngine>
<analyzer name="MMAnalyer" type="CustomAnalyzer" analyzerClass="jeasy.analysis.MMAnalyzer">
<stopWords>
<stopWord value="test" />
</stopWords>
</analyzer>
</searchEngine>
</compass>
</compass-core-config>
结合spring的时候
# <!-- compass Bean -->
# <bean id="compass" class="org.compass.spring.LocalCompassBean">
# <property name="compassConfiguration"
# ref="annotationConfiguration" />
# <property name="transactionManager" ref="txManager" />
# <property name="compassSettings">
# <props>
# <!-- 定义索引的存储位置 -->
# <prop key="compass.engine.connection">d:/compass</prop>
# <prop key="compass.transaction.factory">
# org.compass.spring.transaction.SpringSyncTransactionFactory
# </prop>
# <!-- 定义分词器-->
# <prop key="compass.engine.analyzer.MMAnalyzer.CustomAnalyzer">
# org.mira.lucene.analysis.IK_CAnalyzer
# </prop>
# </props>
# </property>
# <property name="resourceDirectoryLocations">
# <list>
# <value>classpath:net/shopin/bean/product</value>
# </list>
# </property>
#
# </bean>
根据以上配置,发现并没有使用自定义的分词器。
有人讲使用 compass.engine.analyzer.[analyzer name].type
<prop key="compass.engine.analyzer.MMAnalyzer.CustomAnalyzer">
jeasy.analysis.MMAnalyzer
</prop>
但也没有成功
最后使用
<prop key="compass.engine.analyzer.default.type">
com.search.util.ICTCLASChineseAnalyzer /*你自己定义的分词器全路径
</prop>
这个就成功了~
http://www.java1995.cn/blog/item/467
分享到:
相关推荐
Compass 是一个基于 Lucene 的全文检索框架,它提供了一种高级的、面向对象的方式来管理和集成搜索引擎...在开发过程中,可能还需要根据具体需求调整分词器的配置,比如添加自定义词典或调整分词策略,以优化搜索效果。
4. **灵活的映射配置**:通过XML或注解,你可以自定义对象到索引的映射,包括字段类型、分词器、分析器等,以满足各种复杂的搜索需求。 5. **高级查询API**:Compass提供了丰富的查询API,包括基于Lucene的查询构造...
同时,Lucene的API也提供了丰富的功能,如分词器、过滤器等,用于优化索引质量和搜索性能。 至于“工具”标签,Compass提供了丰富的工具类和API,包括查询构造器、排序和高亮显示等,帮助开发者轻松实现搜索功能。...
Compass有一个强大的插件系统,可以扩展其功能,例如支持更多的数据源、新的存储后端或者自定义分析器。 10. **最佳实践** 使用Compass时,应考虑优化索引策略,合理分配内存,避免全表扫描,以及选择合适的分析...
7. **插件系统**:Compass有一个强大的插件系统,可以扩展其功能,例如支持更多的持久化框架、添加自定义的分析器等。 8. **分布式搜索**:尽管Lucene本身不支持分布式,但Compass提供了一些工具和策略来帮助在...
对于使用Spring框架的应用程序,Compass提供了集成点,可以轻松地在Spring环境中管理Compass实例和配置。 ### Compass Core #### Session Types & Lifecycle Compass的核心机制之一是Session,它负责处理数据的...
分析器可以自定义,以适应不同的语言和语境需求。 4. **过滤器(Filter)**:用于处理索引和查询阶段的数据,例如去除停用词、进行词干提取等,以提升搜索精度。 5. **存储(Storage)**:保存原始文档内容以及...
本章节重点介绍了Lucene中的各种分析器,包括如何自定义分析器以满足特定需求。特别是对于中文分词的支持,书中给出了详细的实现方法。 #### 六、对Word、Excel和PDF格式文档的处理 - 针对非纯文本文件的索引和...
3. **分析器(Analyzer)**:对输入的文本进行预处理,如分词、去除停用词等。 4. **文档(Document)**:表示要索引的信息,由多个字段(Field)组成。 5. **字段(Field)**:文档的组成部分,每个字段有其特定的...
3. **基于Compass+Lucene实现站内搜索**:适用于需要对数据库中的应用数据进行索引的场景,尤其是当需要替换传统SQL查询中的`LIKE '%expression%'`时。 最终,**Apache Solr**成为许多企业的首选,因为它不仅提供了...
3. **Compass+Lucene**:适用于数据库驱动的应用,但分布式处理和接口封装需自定义,可能不适合复杂的企业环境。 4. **Solr**:Solr是建立在Lucene之上,提供了一套完整的、高度可配置和扩展的搜索引擎服务,支持...
- **可配置的缓存**:支持配置查询结果、过滤器和文档缓存,以加速检索过程。 - **插拔式缓存实现**:支持自定义缓存实现,以适应不同的性能要求。 - **后台热启**:当新索引准备好后,可以在后台热启,以减少首次...
3. **基于Compass+Lucene实现**:该方案适用于数据库驱动的应用数据索引,尤其适用于替代传统的SQL查询方式来实现对文本字段的高效检索。然而,在分布式处理和接口封装方面仍需额外开发工作。 4. **基于Solr实现**:...
一个典型的全文检索系统通常包括以下几个部分:文本收集、预处理(如分词)、索引创建、索引存储、查询处理和结果返回。在Lucene中,索引采用了倒排索引的结构,这使得快速查找匹配文档变得高效。 **为何使用Lucene...
- **分析器**:内置了多种分析器,可以处理文本数据,进行分词、去除停用词等操作。 - **插件支持**:可以通过插件扩展其功能,例如 Compass 是一个流行的插件,可以提供更高级别的搜索引擎框架。 **2. 版本历史** ...
在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...
JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (<jcaptcha:image label="Type the text "/> ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...