Elasticsearch官方提供了一个名为JDBC的Java库,可以用来执行SQL查询。

使用该库,需要先在项目的pom.xml文件中添加以下依赖:

<dependency>
    <groupId>org.elasticsearch.plugin</groupId>
    <artifactId>x-pack-sql-jdbc</artifactId>
    <version>7.14.1</version>
</dependency>

然后,可以使用JDBC连接字符串来连接Elasticsearch集群,并执行SQL查询。

例如:

import java.sql.*;

public class ElasticsearchSQLDemo {

    public static void main(String[] args) {
        String url = 'jdbc:es://http://localhost:9200/';
        String sql = 'SELECT * FROM my_index WHERE age > 30';

        try (Connection conn = DriverManager.getConnection(url);
             Statement stmt = conn.createStatement()) {
            ResultSet rs = stmt.executeQuery(sql);

            while (rs.next()) {
                String name = rs.getString('name');
                int age = rs.getInt('age');
                System.out.println(name + ', ' + age);
            }

        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

该程序会连接到本地的Elasticsearch集群,并执行一个SQL查询,输出满足条件的文档的姓名和年龄。

使用Java库执行Elasticsearch SQL查询

原文地址: https://www.cveoy.top/t/topic/mun0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录