
ElasticSearch의 SolrInputDocument 클래스의 getFieldBoost 메서드는 특정 필드의 가중치를 설정하는 데 사용됩니다. 이 메서드의 파라미터는 필드 이름과 가중치의 값을 받습니다.
예를 들어, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
java
SolrInputDocument document = new SolrInputDocument();
document.addField("name", "John Doe");
document.addField("age", 30);
document.addField("score", 85.5);
document.addField("score", 90.5); // score 필드에 두 개의 값이 추가됩니다.
document.addField("score", 95.5); // score 필드에 세 개의 값이 추가됩니다.
document.addField("score", 100.0); // score 필드에 네 개의 값이 추가됩니다.
document.getFieldBoost().add("score", 2.0); // score 필드의 가중치를 2.0으로 설정합니다.
이러한 설정을 통해 ElasticSearch는 score 필드의 가중치를 2.0으로 설정하고, 검색 결과에서 score 필드의 값에 더 많은 가중치를 부여합니다.
필드 이름과 가중치의 값을 받는 파라미터는 `Map` 타입의 객체입니다. 따라서, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
java
Map boosts = new HashMap<>();
boosts.put("score", 2.0f);
document.getFieldBoost().add(boosts);
또한, getFieldBoost 메서드는 `Map` 타입의 객체를 반환하므로, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
java
Map boosts = document.getFieldBoost();
boosts.put("score", 2.0f);
2025-04-21 22:44