2024年最全JAVA API调用elasticsearch实现基本增删改查(1),薪资翻倍

最后

针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

image

上述的面试题答案都整理成文档笔记。 也还整理了一些面试资料&最新2021收集的一些大厂的面试真题(都整理成文档,小部分截图)

image

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

/**

* 传递json对象

* 需要添加依赖:gson

* @return void

* @Title: addIndex4

*/

@Test

public void addIndex4() {

JsonObject jsonObject = new JsonObject();

jsonObject.addProperty( “userName” , “张三” );

jsonObject.addProperty( “sendDate” , “2017-11-23” );

jsonObject.addProperty( “msg” , “你好李四” );

IndexResponse response = client .prepareIndex( “qq” , “tweet” ).setSource(jsonObject, XContentType. JSON ).get();

System. out .println( “jsonObject索引名称:” + response.getIndex() + " \n jsonObject类型:" + response.getType()

+ " \n jsonObject文档ID:" + response.getId() + " \n 当前实例jsonObject状态:" + response.status());

}

我们可以创建Json、Map、JsonObject、自定义字段等,创建好之后可以去ES系统中查看是否添加成功。如果不进行分片设置每次创建默认有五个分片数量,具体情况如下图所示。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

2.创建好之后,我们可以通过ES提供的API进行相应的查询操作,具体代码如下所示:

/**

* 从索引库获取数据

*

* @return void

* @Title: query

*/

@Test

public void query() {

GetResponse getResponse = client .prepareGet( “species” , “person” , “AWNtYjiVjqSYg4HhYcQZ” ).get();

System. out .println( “索引库的数据:” + getResponse.getSourceAsString());

}

查询的结果如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ES上面对应索引的数据如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3.下面我们将上面查询到的id(AWNtYjiVjqSYg4HhYcQZ)进行相应的修改,修改索引的API操作如下代码所示:

/**

* 更新索引库数据

* @Title: updateData

* @return void

*/

@Test

public void updateData() {

Map<String, Object> map = new HashMap<String, Object>();

map.put( “name” , “大妹” );

map.put( “age” , 20 );

map.put( “sex” , “女” );

map.put( “address” , “广东省广州市天河区上社” );

map.put( “phone” , “15521202233” );

map.put( “height” , “180” );

map.put( “weight” , “70” );

UpdateResponse updateResponse = client .prepareUpdate( “species” , “person” , “AWNtYjiVjqSYg4HhYcQZ” )

.setDoc(map).get();

System. out .println( “updateResponse索引名称:” + updateResponse.getIndex() + " \n updateResponse类型:" + updateResponse.getType()

+ " \n updateResponse文档ID:" + updateResponse.getId() + " \n 当前实例updateResponse状态:" + updateResponse.status());

}

我们在重新查询一下id为: AWNtYjiVjqSYg4HhYcQZ 的索引文档,看一下数据是否已经修改。结果如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们从上面的截图可以看出数据确实已经修改完毕了,证明修改的API操作是成功的。

4.最后我们看一下最后的删除索引操作,具体的代码如下所示:

/**

* 根据索引名称,类别,文档ID 删除索引库的数据

* @Title: deleteData

* @return void

*/

@Test

public void deleteData() {

DeleteResponse deleteResponse = client .prepareDelete( “species” , “person” , “AWNtYjiVjqSYg4HhYcQZ” ).get();

System. out .println( “deleteResponse索引名称:” + deleteResponse.getIndex() + " \n deleteResponse类型:" + deleteResponse.getType()

+ " \n deleteResponse文档ID:" + deleteResponse.getId() + " \n 当前实例deleteResponse状态:" + deleteResponse.status());

}

下面我们重新执行一下查询id为: AWNtYjiVjqSYg4HhYcQZ 看看是否还可以查询到对应的数据。结果如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可以看到不管是查询结果还是ES数据都没有那条对应的数据了,这证明我们删除的API操作是成功的。

大家可能会有疑问,问什么都没有看到连接ES系统的代码,因为我这边代码是写在Test测试用例中,所以每一个操作都需要连接到ES系统这个操作。所以这边我抽象出来变成父类,具体代码如下所示:

public class ESTest {

/**

* 192.168.11.24 测试IP地址

* 47.106.165.2 外网IP地址

*/

public final static String HOST = “192.168.11.24” ;

public TransportClient client = null ;

public final static int PORT = 9300 ;

/**

* 获取客户端连接信息

*

* @return void

* @throws UnknownHostException

* @Title: getConnect

*/

@SuppressWarnings ({ “resource” , “unchecked” })

@Before

public void getConnect() {

try {

Settings settings = Settings. builder ()

.put( “cluster.name” , “my-application” ).build();

client = new PreBuiltTransportClient(settings).addTransportAddress(

new InetSocketTransportAddress(InetAddress. getByName ( HOST ), PORT ));

} catch (Exception e) {

e.printStackTrace();

}

}

/**

* 关闭连接

最后

小编在这里分享些我自己平时的学习资料,由于篇幅限制,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!

开源分享:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】

程序员代码面试指南 IT名企算法与数据结构题目最优解

这是” 本程序员面试宝典!书中对IT名企代码面试各类题目的最优解进行了总结,并提供了相关代码实现。针对当前程序员面试缺乏权威题目汇总这一-痛点, 本书选取将近200道真实出现过的经典代码面试题,帮助广“大程序员的面试准备做到万无一失。 “刷”完本书后,你就是“题王”!

image.png

《TCP-IP协议组(第4版)》

本书是介绍TCP/IP协议族的经典图书的最新版本。本书自第1版出版以来,就广受读者欢迎。

本书最新版进行」护元,以体境计算机网络技不的最新发展,全书古有七大部分共30草和7个附录:第一部分介绍一些基本概念和基础底层技术:第二部分介绍网络层协议:第三部分介绍运输层协议;第四部分介绍应用层协议:第五部分介绍下一代协议,即IPv6协议:第六部分介绍网络安全问题:第七部分给出了7个附录。

image.png

Java开发手册(嵩山版)

这个不用多说了,阿里的开发手册,每次更新我都会看,这是8月初最新更新的**(嵩山版)**

image.png

MySQL 8从入门到精通

本书主要内容包括MySQL的安装与配置、数据库的创建、数据表的创建、数据类型和运算符、MySQL 函数、查询数据、数据表的操作(插入、更新与删除数据)、索引、存储过程和函数、视图、触发器、用户管理、数据备份与还原、MySQL 日志、性能优化、MySQL Repl ication、MySQL Workbench、 MySQL Utilities、 MySQL Proxy、PHP操作MySQL数据库和PDO数据库抽象类库等。最后通过3个综合案例的数据库设计,进步讲述 MySQL在实际工作中的应用。

image.png

Spring5高级编程(第5版)

本书涵盖Spring 5的所有内容,如果想要充分利用这一领先的企业级 Java应用程序开发框架的强大功能,本书是最全面的Spring参考和实用指南。

本书第5版涵盖核心的Spring及其与其他领先的Java技术(比如Hibemate JPA 2.Tls、Thymeleaf和WebSocket)的集成。本书的重点是介绍如何使用Java配置类、lambda 表达式、Spring Boot以及反应式编程。同时,将与企业级应用程序开发人员分享一些见解和实际经验,包括远程处理、事务、Web 和表示层,等等。

image.png

JAVA核心知识点+1000道 互联网Java工程师面试题

image.png

image.png

企业IT架构转型之道 阿里巴巴中台战略思想与架构实战

本书讲述了阿里巴巴的技术发展史,同时也是-部互联网技 术架构的实践与发展史。

image.png

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

,等等。

[外链图片转存中…(img-CX2GYMYR-1715073326071)]

JAVA核心知识点+1000道 互联网Java工程师面试题

[外链图片转存中…(img-rHuo50xN-1715073326071)]

[外链图片转存中…(img-D9nOdffk-1715073326072)]

企业IT架构转型之道 阿里巴巴中台战略思想与架构实战

本书讲述了阿里巴巴的技术发展史,同时也是-部互联网技 术架构的实践与发展史。

[外链图片转存中…(img-ECytuG2K-1715073326072)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值