solr 和paoding整合

1. 下载paoding-analysis-2.0.4-beta.zip
http://code.google.com/p/paoding/downloads/list

2. 解压压缩包至paoding-analysis-2.0.4-beta
3. 设置paoding的home环境变量:
l 把paoding-analysis-2.0.4-beta中的dic文件夹考到solr的home文件夹中
l 进入paoding-analysis-2.0.4-beta找到paoding-analysis.jar,将其考到tomcat/webapps/solr/solr/WEB-INF/lib下
l 解压paoding-analysis.jar,找到文件paoding-dic-home.properties,更改属性如下:
paoding.dic.home=D:/solr/solr/dic(D:/solr/solr为solr的home目录)
l 重新编译打包成paoding-analysis.jar

4. 封装paoding

package org.paoding;

import java.io.Reader;
import java.util.Map;

import net.paoding.analysis.analyzer.PaodingTokenizer;
import net.paoding.analysis.analyzer.TokenCollector;
import net.paoding.analysis.analyzer.impl.MaxWordLengthTokenCollector;
import net.paoding.analysis.analyzer.impl.MostWordsTokenCollector;
import net.paoding.analysis.knife.PaodingMaker;

import org.apache.lucene.analysis.TokenStream;
import org.apache.solr.analysis.BaseTokenizerFactory;


/**
* 中文切词 对庖丁切词的封装
*/
public class ChineseTokenizerFactory extends BaseTokenizerFactory {
/**
* 最多切分 默认模式
*/
public static final String MOST_WORDS_MODE = "most-words";
/**
* 按最大切分
*/
public static final String MAX_WORD_LENGTH_MODE = "max-word-length";
private String mode = null;
public void setMode(String mode) {
if (mode==null||MOST_WORDS_MODE.equalsIgnoreCase(mode)
|| "default".equalsIgnoreCase(mode)) {
this.mode=MOST_WORDS_MODE;
} else if (MAX_WORD_LENGTH_MODE.equalsIgnoreCase(mode)) {
this.mode=MAX_WORD_LENGTH_MODE;
}
else {
throw new IllegalArgumentException("不合法的分析器Mode参数设置:" + mode);
}
}
@Override
public void init(Map args) {
super.init(args);
setMode( (String) args.get("mode"));
}
public TokenStream create(Reader input) {
return new PaodingTokenizer(input, PaodingMaker.make(),
createTokenCollector());
}
private TokenCollector createTokenCollector() {
if( MOST_WORDS_MODE.equals(mode))
return new MostWordsTokenCollector();
if( MAX_WORD_LENGTH_MODE.equals(mode))
return new MaxWordLengthTokenCollector();
throw new Error("never happened");
}
}


注:其中需要的包为solr.war中的lib库和庖丁文件包中的paoding-analysis.jar
将以上代码打包为paoding.jar(附件中可下载),考到tomcat/webapps/solr/solr/WEB-INF/lib下。

5. 找到solr 的home目录下的conf(即D:\solr\solr\conf)中的schema.xml,做如下修改:


<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<!--<tokenizer class="solr.WhitespaceTokenizerFactory"/>-->
<tokenizer class="org.paoding.ChineseTokenizerFactory" mode="most-words"/>
··· ···
</analyzer>
<analyzer type="query">
<!--<tokenizer class="solr.WhitespaceTokenizerFactory"/>-->
<tokenizer class="org.paoding.ChineseTokenizerFactory" mode="most-words"/>
··· ···
</analyzer>
</fieldType>
其中<!-- --> 里面的为原来默认的内容

6.重启tomcat即可。进行测试http://localhost:8888/solr/admin/analysis.jsp
paoding-analysis.jar paoding-analysis 庖丁分词 paoding-analysis.jar java开源中文分词jar包 立即下载

相关推荐

paoding-analysis

Paoding分词器for Lucene4.2.1-Solr4.2.1,下载后自行修改src下的paoding-dic-home.properties文件,将paoding.dic.home设成词典路径

PaodingAnalyzer分词器在compass中的应用

                                                   PaodingAnalyzer分词器在compass中的应用     1.庖丁解牛。http://code.google.com/p/paoding/downloads/list。使用版本为2.0.4beta。       在此处下载该jar包       2.在compass

jimmylsp的专栏 987

paoding-analysis3.5.jar

paoding分词jar ,支持lucence3以上的版本。本人使用的lucence是3.5的,没有问题。

java solr 分词器,solr 自定义分词器 | 学步园

今天需要将一个以逗号分隔的字段建立到索引库中去,没找到有现成的逗号分隔符分词器,于是看了看源码里空格分词器WhitespaceTokenizerFactory的写法。照葫芦画瓢写了一个逗号分词器:package com.besttone.analyzer;import java.io.Reader;import java.util.Map;import org.apache.solr.analys...

weixin_39884078的博客 282

paoding-analysis-4.2.0.jar

paoding-analysis-4.2.0.jar,自己重新编译了一下源码,支持lucene4.2和solr4.2版本。

适合lucene3.0用的paoding-analysis的jar包

适合lucene3.0用的paoding-analysis的jar包 并且有和spring不冲突的spring jar包

paoding java_solr 和paoding整合

安装solr1.31.安装tomcat6.03.解压后,打开apache-solr-1.3.0"dist目录,找到apache-solr-1.3.0.war,改名为solr.war(为了方便而已),然后把其考到tomcat的webapps目录下。4.运行tomcat后再webapps下会自动生成solr文件夹。5.在tomcat下的"conf"Catalina"localhost中加入solr.x...

weixin_30838923的博客 153

保姆级教程:用GATK4分析重测序数据,从fq.gz到vcf文件一步不落

本文提供了一份详细的GATK4重测序数据分析教程,涵盖从原始fq.gz文件到最终vcf文件的完整上游分析流程。通过Miniconda环境配置、数据质控、序列比对、变异检测等步骤的逐步指导,帮助生物信息学研究人员掌握标准流程,特别适合Linux命令行基础薄弱的研究者学习实践。

weixin_28366053的博客 484

关于Solr1.4和paoding分词器整合的一个需要注意的问题

今天有人说在Solr1.4里使用paoding2.0.4(可能是终结版了),无法实现正常的高亮显示。这个问题说难不难,说简单也不简单,我上次配置的时候,也花了一点时间测试,才找对合适的参数。今天既然有人问起来,我干脆在这里简单写一下,免得以后忘记。   闲话少叙,开始干活。   在Solr1.4出来之前,Paoding就已经停止开发了,所以Paoding分词器没有考虑与Solr1.4整合的...

听雨轩 154

STM32驱动MG996R舵机的PWM控制与闭环原理

舵机是一种典型的模拟闭环伺服系统,其核心是通过电位器反馈实现角度位置的自动校正。工作原理基于负反馈控制:目标PWM脉宽决定期望角度,电位器输出实时反馈实际角度,控制电路计算偏差并驱动电机消除误差。该机制赋予舵机强带载能力与抗干扰性,是机器人、云台、智能执行器等场景的关键执行单元。在嵌入式开发中,STM32通过定时器生成标准20ms周期、0.5–2.5ms脉宽的PWM信号,需严格遵循电气规范,并解决PA15引脚SWJ复用冲突、定时器重映射及CCR精度计算等关键问题。本文深入解析MG996R舵机控制全流程,涵盖

weixin_42600407的博客 564

STM32F103C8T6 驱动2位共阳数码管(基于 74HC595 和 PNP 三极管)

整体设计思路是通过 STM32F103C8T6 控制 74HC595 和 PNP 三极管,实现共阳数码管的显示功能。最初的电路设计中,三极管发射极接 5V 电源,这导致了数码管两位显示相同数字的问题。数码管能够稳定显示 0-99的数字。

qq_40289410的博客 2214

solr4.8中集成mmseg4j1.9.1

要想在Solr中整合mmseg4j其实很容易,只需要如下几个步骤   1、下载(https://code.google.com/p/mmseg4j/downloads/list)并解压mmseg4j-1.9.1.zip,把dist下面的所有jar文件拷贝到你应用服务器下的solr/WEB-INF/lib中。(如果你的应用服务器下面没有solr,请参考《Tomcat中安装Solr》)。

飞鸟快快的专栏 1417

Maven证书信任危机:PKIX path building failed的全面解析与实战修复

本文全面解析了Maven构建中常见的`PKIX path building failed`证书验证错误。该错误通常在使用特定镜像仓库或自建仓库时,因SSL/TLS证书不被JDK默认信任而触发。文章深入剖析了错误根源,对比了临时忽略检查与永久导入证书等不同修复方案的安全性与适用场景,并推荐通过`keytool`将证书导入JDK信任库的根治方法,以保障构建安全与稳定。

zzz56的博客 506

solr整合paoding

1.         下载 paoding-analysis-2.0.4-beta.zip http://code.google.com/p/paoding/downloads/list   2.         解压压缩包至 paoding-analysis-2.0.4-beta 3.         ...

eric_wyf的专栏 208

FEniCS学习笔记01:centos7下通过conda安装FEniCSx0.7

2023年版本的Fenicsx0.7,官网推荐使用conda命令安装集成好的Python包,因此我们的安装思路是先安装Anaconda,再按照官网步骤安装Fenics。

huahua_xiao的博客 5058

从零到一:手把手教你用HFSS仿真60GHz圆极化磁电偶极子天线(附参数调优心得)

本文详细介绍了在HFSS中设计60GHz圆极化磁电偶极子天线的全流程,包括仿真环境搭建、参数化建模、收敛性优化和性能验证。通过系统化的参数扫描和优化策略,显著提升了天线的轴比带宽和增益性能,为毫米波通信应用提供了高效的天线设计解决方案。

weixin_42614269的博客 311

solr整合paoding分词注意的一些细节

今天花了一个下午一个晚上,参考了网上许多资料,终于把paoding分词整合到solr中了,为了避免以后忘记,特此记录。 1.首先写一个类,这个类在网上都有,记录如下: package com.test.slor.tokenizer; import java.io.Reader; import java.util.Map; import net.paodi...

一无所精,皆为所爱。 312

如何使用 ABAP 代码调度一个 ABAP 程序,让其以后台作业的方式运行

笔者之前的教程,介绍了如何使用 SM36 一系列事务码,将一个 ABAP 程序,调度成以后台作业方式运行的详细步骤。 38. 如何让 ABAP 报表在后台作业的模式下运行 大家如果照着上述文章的步骤走一遍,会发现这些手动执行的步骤还是有些繁琐的。 有没有可能让这一切都自动化起来,即通过 ABAP 代码去完成呢?当然可以。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1944

solr(3)整合paoding

1. 下载paoding-analysis-2.0.4-beta.zip http://code.google.com/p/paoding/downloads/list 2. 解压压缩包至paoding-analysis-2.0.4-beta 3. 设置paoding的home环境变量: l 把paoding-analysis-2.0.4-beta中的dic文件夹考到sol

sofokiller的专栏 1163

无线充电Qi协议正向通信FSK的解调设计

常见的FSK解调方法是使用频率锁相环(PLL)来跟踪输入信号中的频率变化。PLL根据输入信号的频率变化来生成数字信号,从而实现FSK信号的解调。本文将详细介绍无线充电Qi协议正向通信FSK的解调设计,并提供相应的源代码。在上述示例代码中,我们首先定义了FSK解调的参数,包括采样率、载波频率、每个比特的持续时间和比特判定阈值。最后,通过比较滤波后的信号与比特判定阈值,我们将解调后的数字数据转换为0和1的序列。请注意,上述代码仅为示例,实际的解调设计可能需要根据具体的应用场景和系统要求进行调整和优化。

IunScala的博客 2444

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Apache Solr 中文分词

中文分词 (Chinese Word Segmentation) 指的是将一个汉字序列切分成一个一个单独的词。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。我们知道,在英文的行文中,单词之间是以空 格作为自然分界符的,而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上的分界符,虽然英文也同样存在短语的划分问题,不过在词这 一层上,中文比之英文要复杂的多、困难的

没有进步就是退步 1519

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

基于(庖丁解牛) paoding 的 Lucene2.* 分词的应用小案例

说明同时请教 ,基于paoding 的lucene4.*的开发是不兼容  首先下载 \paoding-analysis-2.0.4-beta  将    paoding-dic-home.properties 粘贴到src目录下  并加入一行   "paoding.dic.home=E:/paoding2_0_4/dic" 将paoding-analysis-2.0.4-be

JohnBanana的专栏 1152

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

上一篇: 开源企业搜索引擎SOLR的 应用教程
下一篇: Java Socket编程 文件传输(客户端从服务器下载一个文件)
linshow26
博客等级 码龄14年 0粉丝 54原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值