2016-06-15 10 views
0

Ich erstelle eine Unternehmenssuchmaschine. Ich verwende Solr zum Erstellen einer Suchmaschine und SolrJ für Front-End mit JSP. Ich möchte Seitenumbrüche auf meine Suchergebnisse anwenden. Mein Code zum Erhalten der Ergebnisse von solr core lautet wie folgt.Seitennummerierung einer Suchmaschine

while(iter.hasNext()) 
     { 
     SolrDocument doc1 =iter.next(); 
     String dc =iter.next().toString(); 

     out.println(doc1.getFieldValue("id")); 


     out.println(doc1.getFieldValue("title")); 
     out.println("<BR>"); 
     out.println("content_type :"); 
     out.println(doc1.getFieldValue("content_type")); 
     out.println("<BR>"); 
     out.println("doc_type :"); 
     out.println(doc1.getFieldValue("doc_type")); 
     } %>  

Es gibt 600 Datensätze in meiner Suchmaschine. Wenn nach einem bestimmten Schlüsselwort gesucht wird, werden alle darauf bezogenen Datensätze auf einer einzelnen Seite angezeigt. Kann irgendein Körper mir irgendeine Logik für die Paginierung vorschlagen, die Javascript verwendet. Ich möchte die Seitennummerierung auf der Clientseite verwenden. bitte hilfe.

Antwort

0

Während SOLR Abfrage erstellen können Sie einstellen, starten und Zeilen z:

SolrQuery query = new SolrQuery(searchTerm); 
query.setStart((pageNum - 1) * numItemsPerPage); 
query.setRows(numItemsPerPage); 
// execute the query on the server and get results 
QueryResponse res = solrServer.query(solrQuery); 

Auch jedes Mal, wenn Sie iter.next tun() zum nächsten Element in der Iterator lesen. Daher

SolrDocument doc1 =iter.next(); 
String dc =iter.next().toString(); 

Sie sind ein Element skiping. Siehe: here