java访问数据库的步骤(java代码大全及详解)

1.1介绍 福哥需要用Java操作Elasticsearch搜索引擎,经过了一番折腾终于搞定了。现在福哥整理了用Java操作Elasticsearch的方法,分享给大家。有需要的童鞋可以参考一下! 在Java里面操作Elasticsearch搜索引擎是通过官方的elasticsearch库实现的。 2.安装 2.1pom.xml 首先我们在pom.xml里面安装依赖库elasticsearch。 …

1.1 介绍

福哥需要用Java操作Elasticsearch搜索引擎,经过了一番折腾终于搞定了。现在福哥整理了用Java操作Elasticsearch的方法,分享给大家。有需要的童鞋可以参考一下!

在Java里面操作Elasticsearch搜索引擎是通过官方的elasticsearch库实现的。

2. 安装

2.1 pom.xml

首先我们在pom.xml里面安装依赖库elasticsearch。

<!-- elasticsearch -->
<dependency>
    <groupId>org.elasticsearch</groupId>
    <artifactId>elasticsearch</artifactId>
    <version>7.13.0</version>
</dependency>
<dependency>
    <groupId>org.elasticsearch.client</groupId>
    <artifactId>elasticsearch-rest-client</artifactId>
    <version>7.13.0</version>
</dependency>

2.2 application.properties

设置ES参数

##############################################################################
# elasticsearch
##############################################################################

nosql.elasticsearch.host=192.168.2.168
nosql.elasticsearch.port=9200
nosql.elasticsearch.scheme=http

3. 旧方案

3.1 org.elasticsearch.client.Client

这个官方说是一个简单的示例,不太适合多集群的环境,建议使用TransportClient这个客户端。

java访问数据库的步骤(java代码大全及详解)

4. 使用

4.1 Bean

首先我们需要自己创建Bean来给RestClient使用,因为Spring boot不管这事儿。

@Bean
public RestClient ESLowLevelClient(
        @Value(\"${nosql.elasticsearch.host}\") String hostName,
        @Value(\"${nosql.elasticsearch.port}\") int port,
        @Value(\"${nosql.elasticsearch.scheme}\") String scheme
){

    return RestClient.builder(
            new HttpHost(hostName, port, scheme)
    ).build();
}

4.2 测试

现在我们在控制器里面使用@Resource注解初始化RestClient对象,然后使用它去操作ES搜索引擎。

因为RestClient是通过标准的HTTP方式操作ES,所以福哥就只提供两个示例,大家可以举一反三。

@Resource
RestClient restClient;

就一句话,就可以得到RestClient对象的实例了。

4.3 索引列表

现在福哥通过RestClient获取索引列表,由于RestClient只支持JSON格式,所以我们使用EntityUtils转换了一下。

4.3.1 代码

@RequestMapping (\"/net.tongfu.tfspring.elasticsearch\")
private String testElasticsearch()
        throws IOException {
    String out = \"\";

    Request request = new Request(\"GET\", \"/_cat/indices\");
    Response response = restClient.performRequest(request);
    HttpEntity httpEntity = response.getEntity();
    out += EntityUtils.toString(httpEntity);

    return out;
}

4.3.2 效果

java访问数据库的步骤(java代码大全及详解)

5. 总结

福哥研究了半天都没有人去用RestClient去完成查询功能,这个只能等福哥慢慢研究后再和大家分享了~~

未完待续。。。

本文来自投稿,不代表来拓客立场,如若转载,请注明出处:https://www.laituoke.com/ltk/6554.html