> > Hi,

> > >
>> > > I am new to neo4j.
>> > >
>> > > I am using a custom analyzer in index in order to support Chinese.
>> > >
>> > >    chnIndex = this.graphDb.index().forNodes("product_chinese",
>> > >        MapUtil.stringMap("analyzer",
>> > > "org.wltea.analyzer.lucene.IKAnalyzer"));
>> > >
>> > > Below is the usage of the IKAnalyzer in lucence.
>> > >
>> > >      IndexSearcher isearcher = new IndexSearcher(directory);
>> > >      isearcher.setSimilarity(new IKSimilarity());   // A custom
>> > Similarity
>> > >      String word = "OLYMPUS 奥林巴斯 E-PL1 时尚白 微型4/3系统相机 套机 含14-42mm镜头";
>> > >      Query query = IKQueryParser.parse(fieldName, word );  // A custom
>> > > QueryParser
>> > >      TopDocs topDocs = isearcher.search(query, 5); // Got the top 5
>> > >      System.out.println("Found " + topDocs.totalHits);
>> > >      ScoreDoc[] scoreDocs = topDocs.scoreDocs;
>> > >      for (int i = 0; i < topDocs.totalHits; i++) {
>> > >        System.out.println(scoreDocs[i].score); // Got the score of
>> each
>> > > matched doc
>> > >        Document targetDoc = isearcher.doc(scoreDocs[i].doc);
>> > >        System.out.println("Document content is " +
>> targetDoc.toString());
>> > >      }
>> > >
>> > > How can I use the query method of neo4j's indexing to implement
>> > > 1) Add my custom Similartiy implemtation
>>
>
Btw, what's the difference between setting Similarity on IndexWriter vs.
IndexSearcher? Is it performance maybe, that if it's set on the IndexWriter
then the scoring is written during writes, but if it's set on IndexSearcher
it's calculated for each query?
_______________________________________________
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to