1.変更インデックス
インデックスが追加を削除するように更新され、ニーズを更新するには、このメソッドを使用すると、更新にインデックスを既存の実施を確保することをお勧めします、あなたは、更新操作の有無を判断するために、更新レコードをチェックアウトすることができます。
あなたが存在しないターゲットドキュメントオブジェクトのインデックスを更新した場合は、アドオンを実行します。
/ ** *インデックスデータベース変更 * / @Test 公共 のボイド)(testUpdateIndexをスローIOExceptionが{ // StandardAnalyzer標準のワードブレーカをアナライザ(トークナイザ)を作成し、英語の単語の良好な効果は、中国は、単語単語である アナライザアナライザ= 新しい新しいStandardAnalyzerは( ); // 、IndexWriterConfigクラスコンフィギュレーション情報を作成する単語分割ワード使用指定 IndexWriterConfig設定= 新しい新しいIndexWriterConfig(アナライザ); // ディレクトリオブジェクトを作成し、ステートメントインデックスデータベース保管場所 ディレクトリDIR = FSDirectory.open(Paths.get(「 Dを:\\ Luceneの" )); // IndexWriter書き込みオブジェクトを作成し、設定初期化オブジェクトの位置と書かれた指定の使用 IndexWriter IndexWriter = 新新IndexWriter(DIRは、config); // の内容変更する必要 文書ドキュメント= 新しい新しい文書を(); // ドメイン・オブジェクトを作成し、文書内のオブジェクトは、 (document.add 新しい新 StringField(「上記ID上記」、「100 000 003 140」、テキストフィールドを。 Store.YES)); (document.add 新しい新しいテキストフィールド( "名前"、 "インビボ" 、TextField.Store.YES)); // 更新を実行する、すべての適格な文書は削除させていただきます、それを再度追加します。 indexWriter.updateDocument(新しい新しいターム( "ID"、 "100 000 003 140" )、ドキュメント); // リリースリソース indexWriter.close(); }
2. [削除]インデックス
/ ** *削除インデックスデータベース * / @Test 公共 無効 testDeleteIndex()スローにIOException { //はアナライザー(トークナイザ)StandardAnalyzer標準のワードブレーカ、英語の単語の良好な効果を作成し、中国は、単語単語である アナライザアナライザ= 新新StandardAnalyzer( ); // 、IndexWriterConfigクラスコンフィギュレーション情報を作成する単語分割ワード使用指定 IndexWriterConfig設定= 新しい新しいIndexWriterConfig(アナライザ); // ディレクトリオブジェクトを作成し、ステートメントインデックスデータベース保管場所 ディレクトリDIR = FSDirectory.open(Paths.get(「 Dを:\\のLucene " )); //はIndexWriter書き込みオブジェクトを作成し、指定された書かれたオブジェクトの位置および使用初期設定 IndexWriter IndexWriter = 新しい新しいIndexWriter(DIRは、config); //この用語は、インデックスデータベース削除よれ // indexWriter.deleteDocuments(新しい新しい用語( "述べID上方"、 "100 000 003 140")); //は、すべてのインデックス(注意)を削除 indexWriter.deleteAllを(); // リリースリソースが indexWriter.close(); }