Frage

Alles andere die gleiche bleibt, sind einige meiner Objekte wertvoller als andere.

Ist es möglich, Objekte Index Zeit zu steigern, sagen wir mal nach dem USD Preis?

Oder wenn Sie nur eine begrenzte Anzahl von Werten haben, ich habe gehofft, dass dies funktionieren würde:

f:aaa^4 f:bbb^3 f:ccc^2 animal:elephant

, aber ich muss etwas fehlt werden.

War es hilfreich?

Lösung

Was Sie arbeiten sagen. Allerdings werden Sie wahrscheinlich wollen, dass es als (boost query) +(original query) neu zu formatieren, z.B. (f:a^4 f:b^3 b:c^2) +animal:elephant. Die Art und Weise Sie es jetzt haben Dinge finden, die nur f:aaa haben, unabhängig von animal:elephant.

Sie können ein Beispiel für Lucene in Aktion sehen, wie ein benutzerdefinierten weiteren Treffer zu schreiben, die Sie somethign mehr wie Steigerung tun kann nach Preis. Ich bin mir nicht bewusst irgendeiner Weise Sie dies allerdings ohne schreiben einige Code tun können.

Andere Tipps

Wenn Sie Hibernate-Suche verwenden, können Sie direkt hinzufügen Felder steigern Annotation verwenden. Es gibt zwei Arten von boost: dynamische Verstärkung, die auf das gesamte Objekt anwenden, oder Feldebene zu steigern. Sie wollen wahrscheinlich dynamischen Auftrieb und kann mit angegeben werden: @DynamicBoost (impl = VIPBoostStrategy.class)

Unter http://docs.jboss.org/hibernate/search/3.2/reference/en-US/html/search-mapping.html#section-boost-annotation

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top