Springboot uses jest to operate elasticsearch.

  springboot

maven

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>
        <dependency>
            <groupId>io.searchbox</groupId>
            <artifactId>jest</artifactId>
            <version>2.4.0</version>
        </dependency>

Configuration

spring.elasticsearch.jest.uris=http://search.example.com:9200
spring.elasticsearch.jest.read-timeout=10000
spring.elasticsearch.jest.username=user
spring.elasticsearch.jest.password=secret

auto-config

@SpringBootApplication(
    scanBasePackages={"com.example"}, 
    exclude = {ElasticsearchAutoConfiguration.class, ElasticsearchDataAutoConfiguration.class})
@EnableJpaRepositories(basePackages ="com.example.jpa")

Use

    @Autowired
    private JestClient jestClient;

    public SearchResult search(Search.Builder searchBuilder){
        SearchResult result = jestClient.execute(searchBuilder.build());
        return result;
    }

doc