elasticsearch部署使用

 

部署

 
 
 
xxxxxxxxxx
 
 
 
 
#添加仓库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
#docker 安装
yum install docker-ce docker-ce-cli containerd.io
#docker 启动
systemctl restart docker
#docker 拉取elasticsearch镜像
docker pull elasticsearch:7.0.0 
#进入容器
docker run -p  9200:9200  -i -t  elasticsearch:7.0.0   /bin/bash
#安装中文分词
bin/elasticsearch-plugin install analysis-smartcn
#停止容器
docker stop 9ee20833de8e 
#启动容器
 docker run -d -p 9200:9200  -p 9300:9300   -e "discovery.type=single-node" elasticsearch:7.0.0 
 

访问 http://localhost:9200/ 有数据返回,便部署成功

 
 
 
xxxxxxxxxx
 
 
 
 
{
  "name" : "EXd9KSw",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "1Gezj8LTSfaOxQbsPIzSkw",
  "version" : {
    "number" : "5.6.12",
    "build_hash" : "cfe3d9f",
    "build_date" : "2018-09-10T20:12:43.732Z",
    "build_snapshot" : false,
    "lucene_version" : "6.6.1"
  },
  "tagline" : "You Know, for Search"
}
 

curl 测试

 
 
 
xxxxxxxxxx
 
 
 
 
 curl -X PUT 'http://192.168.5.94:9200/hello'
 
 
 
 
xxxxxxxxxx
 
 
 
 
{"acknowledged":true,"shards_acknowledged":true,"index":"hello"}
 

接入

 
 
 
xxxxxxxxxx
 
 
 
 
     <dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <version>7.6.1</version>
        </dependency>
    <dependency>
            <groupId>org.elasticsearch</groupId>
            <artifactId>elasticsearch</artifactId>
            <version>7.6.1</version>
        </dependency>
 

example

 
 
 
xxxxxxxxxx
 
 
 
 
private static RestHighLevelClient client = new RestHighLevelClient(
            RestClient.builder(
                    new HttpHost("192.168.5.94", 9200, "http")));
@Test
    public void index() throws IOException {
        IndexRequest indexRequest=new IndexRequest("posts");
        indexRequest.index("1");
        Map<String,Object>source=new HashMap<>();
        source.put("name","张三");
        indexRequest.source(source);
        try {
            IndexResponse response=client.index(indexRequest,RequestOptions.DEFAULT);
            String id = response.getId();
            System.out.println(id);
        } catch(ElasticsearchException e) {
          e.printStackTrace();
        }
    }
@Test
public void search() throws IOException {
    SearchRequest searchRequest = new SearchRequest("1");
    SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
    SearchSourceBuilder query = searchSourceBuilder.query(QueryBuilders.matchAllQuery());
    searchRequest.source(searchSourceBuilder);
    SearchResponse search = client.search(searchRequest, RequestOptions.DEFAULT);
    SearchHits hits = search.getHits();
    for (SearchHit hit : hits) {
        System.out.println(hit.getIndex());
        System.out.println(hit.getId());
    }
}
 

api参考

elstic.co.

https://www.elastic.co/guide/en/elasticsearch/client/java-rest/7.6/java-rest-high-search.html

 

posted @ 2020-03-06 14:26  webzom  阅读(385)  评论(0)    收藏  举报