我想基於預定列表爲Lucene文檔創建標籤列表。從列表中識別文檔中是否存在關鍵字
所以,如果我們有文字
尋找在Lucene的
一個Java程序員有經驗的文檔,我們有關鍵字列表(大約1000項)
的java ,php,lucene,c#[...]
我想確定關鍵字Java和Lucene存在於文檔中。 只是做一個Java或PHP或lucene將無法正常工作,因爲那樣我就不知道哪個關鍵字產生了命中。
關於如何在Lucene中實現這一點的任何建議?
我想基於預定列表爲Lucene文檔創建標籤列表。從列表中識別文檔中是否存在關鍵字
所以,如果我們有文字
尋找在Lucene的
一個Java程序員有經驗的文檔,我們有關鍵字列表(大約1000項)
的java ,php,lucene,c#[...]
我想確定關鍵字Java和Lucene存在於文檔中。 只是做一個Java或PHP或lucene將無法正常工作,因爲那樣我就不知道哪個關鍵字產生了命中。
關於如何在Lucene中實現這一點的任何建議?
是的,這個工作
FullTextSession fts = Search.getFullTextSession(getSessionFactory().getCurrentSession());
Query q = fts.getSearchFactory().buildQueryBuilder()
.forEntity(Offer.class).get()
.keyword()
.onField("id")
.matching(myId)
.createQuery();
Object[] dId = (Object[]) fts.createFullTextQuery(q, Offer.class)
.setProjection(ProjectionConstants.DOCUMENT_ID)
.uniqueResult();
if(dId != null){
IndexReader indexReader = fts.getSearchFactory().getIndexReaderAccessor().open(Offer.class);
TermFreqVector freq = indexReader.getTermFreqVector((Integer) dId[0], "description");
}
你一定要記住指數與TermVector.YES領域在該領域的Hibernate Search的註解。
我假設您有一個或多個索引字段,並且您想根據關鍵字與文檔的索引條款的交集來構建標籤雲。
你的問題是非常相似的突出,所以方法同樣適用,您可以:
請注意,如果你想使用詞向量,你需要在編譯的時候,讓他們(見Field.TermVector.YES documentation和Field constructor)。
它看起來像TermVectors可能是這裏的票。我正在使用Hibernate Search,所以我會看看是否可以在此上下文中使用此功能 – Marc 2012-02-14 11:05:29