elasticsearch将对象插入索引

2023-12-30

我是 elasticsearch 的新手,正在寻求使用 Java API 的一些帮助。我有一些域对象 例如。

@XmlRootElement

public class BasicActivity {

private String activityName;
private FullActivity activity;  
// Getters and setters
}

我创建了一个连接到节点的传输客户端

Client client = new TransportClient()
        .addTransportAddress(new InetSocketTransportAddress("192.168.0.198",9300));

有没有简单的方法可以将我的对象直接插入到elasticsearch中?

我见过这个

IndexResponse response = client.prepareIndex("twitter", "tweet", "1")
                    .setSource(jsonBuilder()
                                .startObject()
                                    .field("user", "kimchy")
                                    .field("postDate", new Date())
                                    .field("message", "trying out Elastic     Search")
                                .endObject()
                              )
                    .execute()
                    .actionGet();

但要做到这一点,我必须将每个对象转换为 json,这虽然可能不是我的理想情况。

如果我对它的工作原理(架构上)有误解,请告诉我,我是来学习的!

干杯, 抢


我认为你走在正确的道路上。当您不习惯 Java API 时,有时可能很难获得它。我想随着时间的推移,情况会变得更好。

您必须将对象转换为 Json 才能将它们发送到 ElasticSearch 集群。Gson http://code.google.com/p/google-gson/是许多可以为您做到这一点的流行图书馆之一。

上面显示的代码将创建一个索引。现在要将文档添加到该索引,请运行如下命令。

   Tweet tweet = new Tweet();
   tweet.setId("1234");
   tweet.setMessage("message");

   IndexRequest indexRequest = new IndexRequest("twitter","tweet", tweet.getId());
   indexRequest.source(new Gson().toJson(tweet));
   IndexResponse response = client.index(indexRequest).actionGet();

查看批量请求 https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-docs-bulk.html用于同时索引多个项目。一旦你的对象变得更加复杂,你就需要创建Mappings http://www.elasticsearch.org/guide/reference/api/admin-indices-put-mapping.html.

我发现了很好的例子Guide http://www.elasticsearch.org/guide/,但通常更详细的例子在ES谷歌集团 https://groups.google.com/group/elasticsearch.

我必须推荐一下Head https://github.com/mobz/elasticsearch-head前端也是如此。它向您显示现有的索引和项目。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

elasticsearch将对象插入索引 的相关文章

  • Java Try Catch Final 没有 Catch 的情况下会阻塞

    我正在审查一些新代码 该程序只有一个 try 和一个 finally 块 既然排除了 catch 块 那么如果 try 块遇到异常或任何可抛出的内容 它如何工作 它直接进入finally块吗 如果 try 块中的任何代码可以引发已检查异常
  • 使用 GWT CellTableBuilder 构建树表

    Is it possible to build a tree table like this http www sencha com examples ExamplePlace basictreegrid with the new Cell
  • 如何在spring mvc中从控制器名称+操作名称获取映射的URL?

    是否有现有的解决方案可以从 Spring MVC3 中的 控制器名称 操作名称 获取映射的 URL 例如 asp net mvc 或 Rails 中的 UrlHelper 我觉得非常有用 thx 也许 你想要这样的东西 in your Co
  • 无法使用maven编译java项目

    我正在尝试在 java 16 0 1 上使用 maven 构建 IntelliJ 项目 但它无法编译我的项目 尽管 IntelliJ 能够成功完成 在此之前 我使用maven编译了一个java 15项目 但我决定将所有内容更新到16 0 1
  • Android 自定义视图不能以正确的方式处理透明度/alpha

    我正在绘制自定义视图 在此视图中 我使用两个不同的绘画和路径对象在画布上绘画 我基本上是在绘制两个重叠的形状 添加 Alpha 后 视图中重叠的部分比图像的其余部分更暗 这是不希望的 但我不知道如何解决它 这是我的代码片段 用于展示我如何在
  • 如何在 JSP 中导入类?

    我是一个完全的JSP初学者 我正在尝试使用java util List在 JSP 页面中 我需要做什么才能使用除以下类之外的类java lang 使用以下导入语句进行导入java util List 顺便说一句 要导入多个类 请使用以下格式
  • 使用 RecyclerView 适配器在运行时更改布局屏幕

    我有两个布局文件 如下所示 如果列表中存在数据 则我显示此布局 当列表为空时 我会显示此布局 现在我想在运行时更改布局 当用户从列表中删除最后一项时 我想将布局更改为第二张图片中显示的 空购物车布局 In getItemCount Recy
  • Firestore - RecycleView - 图像持有者

    我不知道如何编写图像的支架 我已经设置了 2 个文本 但我不知道图像的支架应该是什么样子 你能帮我告诉我图像的文字应该是什么样子才能正确显示吗 holder artistImage setImageResource model getArt
  • 如何从 Retrofit2 获取字符串响应?

    我正在做 android 正在寻找一种方法来执行超级基本的 http GET POST 请求 我不断收到错误 java lang IllegalArgumentException Unable to create converter for
  • 在java中实现你自己的阻塞队列

    我知道这个问题之前已经被问过并回答过很多次了 但我只是无法根据互联网上找到的示例找出窍门 例如this http tutorials jenkov com java concurrency blocking queues html or t
  • 具有共享依赖项的多模块项目的 Gradle 配置

    使用 gradle 制作第一个项目 所以我研究了 spring gradle hibernate 项目如何组织 gradle 文件 并开始制作自己的项目 但是 找不到错误 为什么我的配置不起作用 子项目无法解决依赖关系 所以项目树 Root
  • 无法加载或查找主类,可以在命令行中使用,但不能在 IDE 中使用[重复]

    这个问题在这里已经有答案了 在将其标记为重复之前 请先听我说完 我正在尝试使用 gradle 导入一个 java 项目 功能齐全 适用于所有其他笔记本电脑 没有问题 我的项目 100 正常运行 适用于所有其他笔记本电脑 当我的笔记本电脑被重
  • 如何记录来自 Akka (Java) 的所有传入消息

    在 Scala 中 您可以使用 LoggingReceive 包装接收函数 如何通过 Java API 实现相同的目标 def receive LoggingReceive case x do something Scala API 有Lo
  • 如何配置 WebService 返回 ArrayList 而不是 Array?

    我有一个在 jax ws 上实现的 java Web 服务 此 Web 服务返回用户的通用列表 它运行得很好 Stateless name AdminToolSessionEJB RemoteBinding jndiBinding Admi
  • 尝试使用等于“是”或“否”的字符串变量重新启动 do-while 循环

    计算行程距离的非常简单的程序 一周前刚刚开始 我有这个循环用于解决真或假问题 但我希望它适用于简单的 是 或 否 我为此分配的字符串是答案 public class Main public static void main String a
  • 哪个集合更适合存储多维数组中的数据?

    我有一个multi dimensional array of string 我愿意将其转换为某种集合类型 以便我可以根据自己的意愿添加 删除和插入元素 在数组中 我无法删除特定位置的元素 我需要这样的集合 我可以在其中删除特定位置的数据 也
  • Hibernate 和可序列化实体

    有谁知道是否有一个框架能够从实体类中剥离 Hibernate 集合以使它们可序列化 我查看了 BeanLib 但它似乎只进行实体的深层复制 而不允许我为实体类中的集合类型指定实现映射 BeanLib 目前不适用于 Hibernate 3 5
  • Android AutoCompleteTextView 带芯片

    我不确定我是否使用了正确的词语来描述此 UI 功能 但我已附上我希望在我的应用程序中实现的目标的快照 它由 Go SMS 使用 用户在编辑文本中键入联系人 在用户从完成下拉列表中选择联系人后 该联系人将被插入到编辑文本中 如附图所示 编辑文
  • Java &= 运算符应用 & 或 && 吗?

    Assuming boolean a false 我想知道是否这样做 a b 相当于 a a b logical AND a is false hence b is not evaluated 或者另一方面 这意味着 a a b Bitwi
  • Android 和 Java 中绘制椭圆的区别

    在Java中由于某种原因Ellipse2D Double使用参数 height width x y 当我创建一个RectF在Android中参数是 left top right bottom 所以我对适应差异有点困惑 如果在 Java 中创

随机推荐

  • 如何在 Gradle 中设置 Kotlin 源编码?

    使用 Gradle 构建 Java 或 Groovy 时 可以像这样定义源编码 compileJava options encoding UTF 8 compileTestJava options encoding UTF 8 compil
  • 如何限制对 Elmah 的远程访问?

    在我们的开发 Web 服务器上安装 Elmah 后 我们可以限制谁远程访问它吗 即使我们对用户名 密码进行硬编码 散列 还是仅通过 IP 有两种设置 一种是在
  • 在构造函数重载的情况下如何调用 super(...) 和 this(...) ?

    我以前从未需要这样做 但由于两者都必须是构造函数中的 第一 行 应该如何处理它 对于这种情况 最好的重构是什么 这是一个示例 public class Agreement extends Postable public Agreement
  • 使 LinearLayout 像 Button 一样工作

    我有一个LinearLayout我设计得看起来像button 它包含一些文本 ImageView 元素 我想做整体LinearLayout表现得像一个button 特别是赋予它在 a 中定义的状态 以便在按下时它具有不同的背景 有没有比制作
  • 浏览器窗口中的所有选项卡是否共享一个 JavaScript 线程?

    一般来说 浏览器中的 JavaScript 执行被认为是单线程的 这个单一线程是否适用于浏览器窗口中打开的所有选项卡 换句话说 如果 不同的 JavaScript 代码在不同的选项卡中运行 它们都是使用单个线程执行的吗 此外 当您打开同一浏
  • 将seaborn图例移动到不同的位置

    我在用着factorplot kind bar 与海博恩 情节很好 只是图例放错了位置 太靠右 文本超出了情节的阴影区域 如何让seaborn将图例放在其他地方 例如左上角而不是右中 基于 user308827的答案 你可以使用legend
  • 我可以在 Facebook 应用程序上设置页面选项卡高度吗?

    我使用以下命令创建了一个 Facebook 页面选项卡应用程序Heroku 托管选项 https devcenter heroku com articles facebook 我看到一个用于将 页面选项卡 宽度设置为 正常 810 像素 或
  • Raphaël 对象:模拟点击

    是否可以模拟拉斐尔对象上的点击 我已经尝试过了 object click Error click is not a function or object dispatchEvent click Error Could not convert
  • 使用 java Mapreduce 处理 JSON

    我是 hadoop mapreduce 新手 我输入了文本文件 其中数据已存储如下 这里只有几个元组 data txt author Shari f Qa sim book al Rabi al manshu d author Na s i
  • 传递给 Rust WebAssembly 模块时 JavaScript 字符串为空

    当将字符串传递给 Rust WASM 模块时 传递的数据显示为空白 根据模式匹配real code compute功能 以下代码是我尝试过的 我不知道这是否与它的返回方式有关 但是当我传递硬编码时 str 效果很好 但是 那JsIntero
  • 验证:仅字母、数字和 -

    我想验证我的用户 因此他们只能在用户名中使用 a z 和 validates format of username with gt a z 然而这条规则也允许空格 Username should use only letters numbe
  • Oauth 错误 invalid_request:redirect_uri 未列入白名单

    我正在尝试基于此使用 React 和 Node 开发一个应用程序文档 https developers shopify com tutorials build a shopify app with node and react 我一步步按照
  • ListenableWorker 不删除通知图标

    我正在使用 ListenableWorker 执行后台任务 另外我希望操作系统了解我的服务重要性 所以我打电话 setForegroundAsync new ForegroundInfo WorkerConstants NOTIFICATI
  • 文本变量不起作用

    我正在尝试从 Tkinter 中的 Entry 小部件中获取文本 它适用于 Entry1 get 但不适用于 textvariable 我究竟做错了什么 from Tkinter import master Tk v StringVar d
  • 龙卷风“@run_on_executor”正在阻塞

    我想问一下如何龙卷风 concurrent run on executor https tornado readthedocs org en latest concurrent html tornado concurrent run on
  • django-registration 激活 url 中的等号

    我正在使用 django registration 由于某种原因 当它发送激活电子邮件时 它会在倒数第三个字符中插入一个等号 如下所示 http example com accounts activate a65b4aca5156211bc
  • 查找给定时间 .wav 的“音量”

    我正在为我的第四年项目 处理函数反应式编程 开发一个小型示例应用程序 我们的想法是创建一个简单的程序 可以播放 wav 文件 然后显示正在播放歌曲的当前音量的 弹跳 动画 就像在录音软件中一样 我正在 Scala 中构建它 因此主要关注 J
  • 无论 IP 地址是什么,isReachable 始终返回 true

    所以我一直在使用 isReachable 在我的 java 代码中 ping 一个地址 这段代码似乎是每个人都使用的 try InetAddress address InetAddress getByName 172 16 2 0 Try
  • ASP.NET vNext 和 EF7 中的多个 dbContext

    我正在尝试使用 MVC 6 和 EF7 通过 ASP NET vNext 构建 Web 系统 我正在看这个教程 http stephenwalther com archive 2015 01 17 asp net 5 and angular
  • elasticsearch将对象插入索引

    我是 elasticsearch 的新手 正在寻求使用 Java API 的一些帮助 我有一些域对象 例如 XmlRootElement public class BasicActivity private String activityN