Solr的安裝和使用

1谜洽、Solr是什么?

Solr 是Apache下的一個頂級開源項目吴叶,采用Java開發(fā)阐虚,它是基于Lucene的全文搜索服務(wù)器。Solr提供了比Lucene更為豐富的查詢語言蚌卤,同時實現(xiàn)了可配置实束、可擴展奥秆,并對索引、搜索性能進行了優(yōu)化咸灿。
Solr是一個全文檢索服務(wù)器构订,只需要進行配置就可以實現(xiàn)全文檢索服務(wù)。

2避矢、solr的安裝

1悼瘾、安裝jdk1.7
具體參考我的文章:Centos7下安裝jdk1.7。這里不再贅述审胸。

2亥宿、安裝tomcat
(1)上傳并解壓tomcat7安裝包:
tar -zxf apache-tomcat-7.0.47.tar.gz
(2)創(chuàng)建solr文件夾,并將解壓后的tomcat復(fù)制過去:
[root@bogon ~]# mkdir /usr/local/solr
[root@bogon ~]# cp apache-tomcat-7.0.47 /usr/local/solr/tomcat -r

3砂沛、安裝solr
(1)上傳并解壓solr安裝包:
tar -zxf solr-4.10.3.tgz.tgz
(2)把solr-4.10.3/dist/solr-4.10.3.war包部署到tomcat下烫扼。并改名為solr.war:
[root@bogon dist]# cp solr-4.10.3.war /usr/local/solr/tomcat/webapps/solr.war
(3)解壓war包。啟動tomcat自動解壓碍庵。關(guān)閉tomcat映企。刪除solr.war.
啟動命令:sh bin/startup.sh
停止命令:sh bin/shutdown.sh
(4)把solr-4.10.3/example/lib/ext 目錄下所有的jar包復(fù)制到solr工程中:
[root@bogon ext]# cp * /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/
(5)在solr下創(chuàng)建solrhome。Solrhome是存放solr服務(wù)器所有配置文件的目錄:
[root@bogon example]# pwd
/root/solr-4.10.3/example
[root@bogon example]# cp -r solr /usr/local/solr/solrhome
(6)告訴solr服務(wù)器solrhome的位置怎抛。需要修改solr工程的web.xml文件卑吭。

image.png

(7)啟動tomcat,測試solr马绝。
image.png

3豆赏、Solr的使用

import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrServer;
import org.apache.solr.client.solrj.impl.HttpSolrServer;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.SolrDocument;
import org.apache.solr.common.SolrDocumentList;
import org.apache.solr.common.SolrInputDocument;
import org.junit.Test;

public class TestSolrj {

    /**
     * 在solr中增加數(shù)據(jù)
     * @throws Exception
     */
    @Test
    public void addDocument() throws Exception{
        SolrServer solrServer = new HttpSolrServer("http://10.10.1.146:8080/solr");
        SolrInputDocument document = new SolrInputDocument();
        document.addField("id","test01");
        document.addField("item_title","測試商品");
        document.addField("item_price","100");
        solrServer.add(document);
        solrServer.commit();
    }

    /**
     * 在solr中修改數(shù)據(jù)(id相同,即可修改相應(yīng)數(shù)據(jù))
     * @throws Exception
     */
    @Test
    public void updateDocument() throws Exception{
        SolrServer solrServer = new HttpSolrServer("http://10.10.1.146:8080/solr");
        SolrInputDocument document = new SolrInputDocument();
        document.addField("id","test01");
        document.addField("item_title","測試商品2");
        document.addField("item_price","200");
        solrServer.add(document);
        solrServer.commit();
    }

    /**
     * 在solr中刪除數(shù)據(jù)
     * @throws Exception
     */
    @Test
    public void deleteDocument() throws Exception{
        SolrServer solrServer = new HttpSolrServer("http://10.10.1.146:8080/solr");
        //根據(jù)id刪除
        solrServer.deleteById("test01");
        //根據(jù)查詢條件刪除
        //solrServer.deleteByQuery("*:*");
        solrServer.commit();
    }

    /**
     * 在solr中查詢數(shù)據(jù)
     * @throws Exception
     */
    @Test
    public void queryDocument() throws Exception {
        SolrServer solrServer = new HttpSolrServer("http://10.10.1.146:8080/solr");
        //創(chuàng)建一個查詢對象
        SolrQuery query = new SolrQuery();
        //設(shè)置查詢條件
        query.setQuery("*:*");
        query.setStart(20);
        query.setRows(50);
        //執(zhí)行查詢
        QueryResponse response = solrServer.query(query);
        //取查詢結(jié)果
        SolrDocumentList solrDocumentList = response.getResults();
        System.out.println("共查詢到記錄:" + solrDocumentList.getNumFound());
        for (SolrDocument solrDocument : solrDocumentList) {
            System.out.println(solrDocument.get("id"));
            System.out.println(solrDocument.get("item_title"));
            System.out.println(solrDocument.get("item_price"));
            System.out.println(solrDocument.get("item_image"));

        }
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末富稻,一起剝皮案震驚了整個濱河市掷邦,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌椭赋,老刑警劉巖抚岗,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異哪怔,居然都是意外死亡宣蔚,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門认境,熙熙樓的掌柜王于貴愁眉苦臉地迎上來胚委,“玉大人,你說我怎么就攤上這事叉信∧抖” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵硼身,是天一觀的道長硅急。 經(jīng)常有香客問我覆享,道長,這世上最難降的妖魔是什么营袜? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任撒顿,我火速辦了婚禮,結(jié)果婚禮上连茧,老公的妹妹穿的比我還像新娘核蘸。我一直安慰自己巍糯,他們只是感情好啸驯,可當(dāng)我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著祟峦,像睡著了一般罚斗。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上宅楞,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天针姿,我揣著相機與錄音,去河邊找鬼厌衙。 笑死距淫,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的婶希。 我是一名探鬼主播榕暇,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼喻杈!你這毒婦竟也來了彤枢?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤筒饰,失蹤者是張志新(化名)和其女友劉穎缴啡,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瓷们,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡业栅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了谬晕。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片碘裕。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖固蚤,靈堂內(nèi)的尸體忽然破棺而出娘汞,到底是詐尸還是另有隱情,我是刑警寧澤夕玩,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布你弦,位于F島的核電站惊豺,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏禽作。R本人自食惡果不足惜尸昧,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望旷偿。 院中可真熱鬧烹俗,春花似錦、人聲如沸萍程。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽茫负。三九已至蕉鸳,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間忍法,已是汗流浹背潮尝。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留饿序,地道東北人勉失。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像原探,于是被迫代替她去往敵國和親乱凿。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容