天天看點

在java中如何使用sphinx技術(coreseek)

安裝好mmseg(中文分詞)及csft(coreseek fulltext)之後,進入到csft-3.1.tar.gz解壓後的目錄csft-3.1。進入其子目錄api,再進入其子目錄java。使用指令cat readme,可根據它的提示生成 sphinxapi.jar。

将 sphinxapi.jar導入到MyEclipse工程裡面,在這裡寫一個簡單的測試代碼,通路coreseek:

import org.sphx.api.SphinxException;

import org.sphx.api.test;

public class SphinxTest {

public static void main(String args[]) throws SphinxException{

test.main(new String[]{"-h", "125.216.242.122","-i", "test1","-p", "3312","test"});

}

}

其中,-h指定連接配接到的主機,它是coreseek所在的主機。-i是coreseek安裝的目标目錄下etc子目錄裡面的csft.conf檔案裡面配置的索引名。-p指定端口号。最後的test是你要檢索的關鍵字。更多的選項可将上述語句改為test.main(null);,參照工作區的輸出。

當然,要能通路coreseek,前提是它的searchd程序已啟動:sudo /usr/local/csft/bin/searchd(我們假設coreseek安裝在 /usr/local/)。

好了,現在就參簡單地在java中使用全文檢索技術了,更多的拓展功能當然要改進csft-3.1/api/java裡面的代碼再生成 sphinxapi.jar,導入到MyEclipse工程裡了。