使用java操做solrjava 前面講了不少對solr的操做都是直接在頁面上操做的,實際工做中確定是要使用java進行操做的,在這咱們就看一下如何使用java來操做solrapache Solr提供了solrj來使用java操做solr,SolrJ是封裝了httpClient方法,來操做solr的API的。首先添加maven依賴微信 <dependency>maven <groupId>org.apache.solr</groupId>url <artifactId>solr-solrj</artifactId>spa <version>4.10.4</version>orm </dependency>對象 還要添加junit4的maven依賴索引 <dependency>ci <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> 查詢query 下面就能夠寫代碼了,新建一個testSolr類, 執行的時候發現報錯,是由於缺乏common-logging的包,添加對應的maven依賴 <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency> 這樣的話就能夠把collection1這個索引庫裏面的數據打印出來了,由於查詢條件是*:* 在這要注意這個baseurl,默認狀況下,若是操做collection1裏面的數據的話不須要指定就能夠,默認就會操做collection1這個索引庫。 因此上面的兩個baseurl的效果是同樣的。 索引index 使用add方法,能夠向solr中添加一條數據。 註解方式創建索引 在實際工做中,若是在創建索引的時候讓咱們一個屬性一個屬性的設置是很麻煩的,通常都是直接使用一個對象,這樣使用起來也很方便。 首先建立一個實體類,主要注意裏面的字段要添加一個註解,若是不添加的話solr是不能識別的。 這樣就能夠把這個對象在solr中創建索引了。 刪除索引delete 能夠根據ID進行刪除,或者根據查詢條件進行刪除。 拼寫檢查spellcheck 設置查詢的handler,修改成/spell,獲取查詢結果,若是查詢結果爲0,則說明沒有查詢到結果,可能就是輸入的查詢關鍵字有錯誤,這樣就能夠根據getspellcheckresponse方法獲取拼寫檢查的response,根據這個response的一些方法就能夠獲取到建議的結果。 能夠根據下面的方式獲取建議的結果。在這是從collation中獲取結果。 或者根據下面的方法獲取建議結果。在這是從suggestion中獲取結果。 上面的兩種方式均可以獲取建議拼寫的結果。 |
更多精彩內容請關注:http://bbs.superwu.cn
關注超人學院微信二維碼: