官术网_书友最值得收藏!

3.2.4 刪除索引庫中的索引文檔

索引過一段時間后可能會過期。例如,索引的一些網頁鏈接會失效。可從IndexWriter中刪除文檔。

        indexWriter.delete(new Term("id", "1"));

Term的值在索引庫中并不一定是唯一的,比如要把某個類別的商品下架:

        indexWriter.delete(new Term("cat", "book")); //把圖書類商品從索引庫中刪除

IndexReader和IndexWriter都能刪除文檔,區別是:當IndexWriter打開索引的時候,IndexReader的刪除操作會拋出LockObtainFailedException異常。

Lucene在刪除索引時,經常會出現代碼成功執行,但索引并未真正刪除的現象。在創建Term時,注意Term的值必須是不可再拆分的詞,否則刪除不成功。

若需要批量刪除某個網站的網頁,則可以根據查詢條件刪除:

        PrefixQuery query = new PrefixQuery(new Term("url", "http://www.lietu.com");
        indexWriter.deleteDocuments(query);
主站蜘蛛池模板: 股票| 神农架林区| 扶绥县| 黄陵县| 西乌珠穆沁旗| 墨竹工卡县| 武平县| 昌吉市| 南京市| 三门峡市| 渝中区| 宁津县| 佛教| 修水县| 沙洋县| 沁阳市| 拜城县| 平顺县| 泸州市| 黑水县| 扶绥县| 富阳市| 米脂县| 元谋县| 盐山县| 松滋市| 陇南市| 万安县| 梨树县| 华容县| 厦门市| 高要市| 双牌县| 探索| 新疆| 千阳县| 若尔盖县| 德安县| 临泽县| 成武县| 恭城|