2016-05-06 6 views
1

IndexReader.lastModified(ディレクトリd)メソッドはluceneでは非推奨です。4.このコードの代わりに何を使用してください。ルーネンバージョン4以降のIndexReader.lastModified(ディレクトリd)の置き換え4

+0

fileModified(ファイルディレクトリ、文字列名) 名前付きファイルが最後に変更された時刻を返します。 [https://lucene.apache.org/core/4_6_0/core/org/apache/lucene/store/FSDirectory.html] – vinod

答えて

1

Lucene APIでは、このようなメソッドは使用できません。 recommended approachは、この情報が必要な場合は、コミットデータを通じて利用可能にする必要があります。あなたは、インデックスにコミットするとき

ので、このようにコミットデータを設定します。

Map<String, String> userData = new HashMap<String, String>(); 
userData.put("lastModified", String.valueOf(new Date().getTime())); 
indexWriter.setCommitData(userData); 
indexWriter.commit(); 

を次にあなたが最後にコミット時間を読むために必要がある場合、あなたはこのように、DirectoryReaderからそれを得ることができます。

Map<String, String> userData = directoryReader.getIndexCommit().getUserData(); 
Date lastCommitDate = new Date(Long.parseLong(userData.get("lastModified"))); 
関連する問題