ElasticSearch工具类,像操作数据库一般两行代码操作ElasticSearch
使用的 elasticsearch-7.10.1 做的测试。
<dependency>
<groupId>com.xnx3.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>1.1.1</version>
</dependency>
ElasticSearchUtil es = new ElasticSearchUtil("192.168.31.134");
es.createIndex("user");
这里便是创建了一个名为 user 的索引(可以理解为user数据表),这个只需要创建一次,有了就不用在创建了,当然在执行创建也没事,执行不成功而已。
//用map定义一条数据
Map<String, Object> map = new HashMap<String, Object>();
map.put("username", "guanleiming");
map.put("age", 26);
//提交保存到elasticsearch的user索引(可以理解为数据的user表)中
es.put(map, "user");
List<Map<String, Object>> list = es.searchBySqlQuery("SELECT * FROM user WHERE username = 'guanleiming'");
//或者:
List<Map<String, Object>> list = es.search("user", "username:guanleiming");
List<Map<String, Object>> list = es.searchBySqlQuery("SELECT * FROM user WHERE username = 'guanleiming' AND age = 26");
//或者:
List<Map<String, Object>> list = es.search("user", "username:guanleiming AND age:26");
本项目只是将常用接口进行了封装,以便不用入门就能使用。更多的使用,可直接使用本身官方的:
es.getRestClient().
es.getRestHighLevelClient().
可以通过获取client对象,来使用更多 elasticsearch sdk 本身所具有的功能