Вам просто нужно использовать метод setBoost(float)
класса Query
.
Например,
TermQuery tq1 = new TermQuery(new Term("text", "term1"));
tq1.setBoost(5f);
TermQuery tq2 = new TermQuery(new Term("text", "term2"));
tq2.setBoost(0.8f);
BooleanQuery query = new BooleanQuery();
query.add(tq1, Occur.SHOULD);
query.add(tq2, Occur.SHOULD);
Это эквивалентно разбору запроса text:term1^5 text:term2^0.8
.