{"id":65079,"date":"2017-04-19T22:28:10","date_gmt":"2017-04-19T19:28:10","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/?p=65079"},"modified":"2023-12-11T10:13:40","modified_gmt":"2023-12-11T08:13:40","slug":"elasticsearch-tutorial-java-developers","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html","title":{"rendered":"Elasticsearch Tutorial for Java Developers"},"content":{"rendered":"<h2>Course Overview<\/h2>\n<p>Elasticsearch is a search engine based on Lucene. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents. Elasticsearch is developed in Java and is released as open source under the terms of the Apache License. Elasticsearch is the most popular enterprise search engine followed by Apache Solr, also based on Lucene.<\/p>\n<p>Elasticsearch can be used to search all kinds of documents. It provides scalable search, has near real-time search, and supports multitenancy. Elasticsearch is distributed, which means that indices can be divided into shards and each shard can have zero or more replicas. Each node hosts one or more shards, and acts as a coordinator to delegate operations to the correct shard(s). Rebalancing and routing are done automatically. Related data is often stored in the same index, which consists of one or more primary shards, and zero or more replica shards. Once an index has been created, the number of primary shards cannot be changed. (Source: <a href=\"https:\/\/en.wikipedia.org\/wiki\/Elasticsearch\">Wikipedia<\/a>)<\/p>\n<p>In this course, we provide a series of tutorials so that you can develop your own Elasticsearch based applications. We cover a wide range of topics, from installation and operations, to Java API Integration and reporting. With our straightforward tutorials, you will be able to get your own projects up and running in minimum time.<\/p>\n<h2>Author Overview<\/h2>\n<p>Andriy completed his Master Degree in Computer Science at Zhitomir Institute of Engineering and Technologies, Ukraine. For the last fifteen years he has been working as the Consultant\/Software Developer\/Senior Software Developer\/Team Lead for a many successful projects including several huge software systems for customers from North America and Europe.<\/p>\n<p>Through his career Andriy has gained a great experience in enterprise architecture, web development (ASP.NET, Java Server Faces, Play Framework), software development practices (test-driven development, continious integration) and software platforms (Sun JEE, Microsoft .NET), object-oriented analysis and design, development of the rich user interfaces (MFC, Swing, Windows Forms\/WPF), relational database management systems (MySQL, SQL Server, PostgreSQL, Oracle), NoSQL solutions (MongoDB, Redis) and operating systems (Linux\/Windows).<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<p>Andriy has a great experience in development of distributed (multi-tier) software systems, multi-threaded applications, desktop applications, service-oriented architecture and rich Internet applications. Since 2006 he is actively working primarily with JEE \/ JSE platforms.<\/p>\n<p>As a professional he is always open to continuous learning and self-improvement to be more productive in the job he is really passionate about.<\/p>\n<h2>Lessons<\/h2>\n<h3 class=\"name post-title entry-title\"><a href=\"https:\/\/www.javacodegeeks.com\/2017\/02\/elasticsearch-java-developers-introduction.html\">Introduction<\/a><\/h3>\n<p>Effective, fast and accurate search functionality is an integral part of vast majority of the modern applications and software platforms. Either you are running a small e-commerce web site and need to offer your customers a search over product catalogs, or you are a service provider and need to expose an API to let the developers filter over users and companies, or you are building any kind of messaging application where finding a conversation in the history is a must-have feature from day one<br \/>\n[ulp id=&#8217;lFK4fMZhpULqeQUl&#8217;]<br \/>\n&nbsp;<\/p>\n<h3 class=\"name post-title entry-title\"><a href=\"https:\/\/www.javacodegeeks.com\/2017\/02\/elasticsearch-java-developers-elasticsearch-command-line.html\">Elasticsearch from the command line<\/a><\/h3>\n<p><a href=\"https:\/\/www.javacodegeeks.com\/2017\/02\/elasticsearch-java-developers-introduction.html\">From the previous part of the tutorial<\/a> we have got a pretty good understanding of what <a href=\"https:\/\/www.elastic.co\/products\/elasticsearch\">Elasticsearch<\/a> is, its basic concepts and the power of search capabilities it could bring to our applications. In this section we are jumping right into the battle and going to apply our knowledge in practice. Along this section <a href=\"https:\/\/curl.haxx.se\/\">curl<\/a> and\/or <a href=\"https:\/\/httpie.org\/\">http<\/a> would be the only tools we are going to use to make friends with <a href=\"https:\/\/www.elastic.co\/products\/elasticsearch\">Elasticsearch<\/a>.<\/p>\n<h3 class=\"name post-title entry-title\"><a href=\"https:\/\/www.javacodegeeks.com\/2017\/03\/elasticsearch-java-developers-elasticsearch-java.html\">Elasticsearch from Java<\/a><\/h3>\n<p>In the <a href=\"https:\/\/www.javacodegeeks.com\/2017\/02\/elasticsearch-java-developers-elasticsearch-command-line.html\">previous part of the tutorial<\/a> we mastered the skills of establishing meaningful conversations with <a href=\"https:\/\/www.elastic.co\/products\/elasticsearch\">Elasticsearch<\/a> by leveraging its numerous <a href=\"https:\/\/en.wikipedia.org\/wiki\/Representational_state_transfer\">RESTful APIs<\/a>, using the command line tools only. It is very handful knowledge, however when you are developing Java \/ JVM applications, you would need better options than command line. Luckily, <a href=\"https:\/\/www.elastic.co\/products\/elasticsearch\">Elasticsearch<\/a> has more than one offering in this area.<\/p>\n<h3 class=\"name post-title entry-title\"><a href=\"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-java-developers-elasticsearch-ecosystem.html\">Elasticsearch Ecosystem<\/a><\/h3>\n<p>In this last part of the tutorial we are going to look around and learn how perfectly <a href=\"https:\/\/www.elastic.co\/products\/elasticsearch\">Elasticsearch<\/a> fits into Java ecosystem and inspires many interesting projects. One of the best ways to illustrate that is to take a look at the marriage of <a href=\"https:\/\/www.elastic.co\/products\/elasticsearch\">Elasticsearch<\/a> and <a href=\"http:\/\/hibernate.org\/\">Hibernate<\/a> framework, an exceptionally beloved choice among Java developers for managing the persistence layer.<\/p>\n<p>Make sure to retweet this, let your social followers know!<\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"500\" data-dnt=\"true\">\n<p lang=\"pt\" dir=\"ltr\"><a href=\"https:\/\/twitter.com\/hashtag\/Elasticsearch?src=hash&amp;ref_src=twsrc%5Etfw\">#Elasticsearch<\/a> Tutorial for <a href=\"https:\/\/twitter.com\/hashtag\/Java?src=hash&amp;ref_src=twsrc%5Etfw\">#Java<\/a> Developers <a href=\"https:\/\/t.co\/2R3UHPk063\">https:\/\/t.co\/2R3UHPk063<\/a> <a href=\"https:\/\/t.co\/GHE6IJBKKy\">pic.twitter.com\/GHE6IJBKKy<\/a><\/p>\n<p>&mdash; Java Code Geeks (@javacodegeeks) <a href=\"https:\/\/twitter.com\/javacodegeeks\/status\/854779538651443200?ref_src=twsrc%5Etfw\">April 19, 2017<\/a><\/p>\n<\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Course Overview Elasticsearch is a search engine based on Lucene. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents. Elasticsearch is developed in Java and is released as open source under the terms of the Apache License. Elasticsearch is the most popular enterprise search engine followed by &hellip;<\/p>\n","protected":false},"author":141,"featured_media":65382,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[732],"class_list":["post-65079","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-elasticsearch"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Elasticsearch Tutorial for Java Developers - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Check out our Elasticsearch Tutorial where we cover a wide range of topics, from installation and operations, to Java API Integration and reporting!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Elasticsearch Tutorial for Java Developers - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Check out our Elasticsearch Tutorial where we cover a wide range of topics, from installation and operations, to Java API Integration and reporting!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2017-04-19T19:28:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-12-11T08:13:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/04\/elastic-logo.png\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Andrey Redko\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andrey Redko\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html\"},\"author\":{\"name\":\"Andrey Redko\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/771a6504862edc45322776832cbce413\"},\"headline\":\"Elasticsearch Tutorial for Java Developers\",\"datePublished\":\"2017-04-19T19:28:10+00:00\",\"dateModified\":\"2023-12-11T08:13:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html\"},\"wordCount\":715,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/elastic-logo.png\",\"keywords\":[\"Elasticsearch\"],\"articleSection\":[\"Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html\",\"name\":\"Elasticsearch Tutorial for Java Developers - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/elastic-logo.png\",\"datePublished\":\"2017-04-19T19:28:10+00:00\",\"dateModified\":\"2023-12-11T08:13:40+00:00\",\"description\":\"Check out our Elasticsearch Tutorial where we cover a wide range of topics, from installation and operations, to Java API Integration and reporting!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/elastic-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/elastic-logo.png\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2017\\\/04\\\/elasticsearch-tutorial-java-developers.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Elasticsearch Tutorial for Java Developers\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/771a6504862edc45322776832cbce413\",\"name\":\"Andrey Redko\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/16419ce8394173028eddaeb992859862bab50cfcf74589fa9bb9a3dd8bb27518?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/16419ce8394173028eddaeb992859862bab50cfcf74589fa9bb9a3dd8bb27518?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/16419ce8394173028eddaeb992859862bab50cfcf74589fa9bb9a3dd8bb27518?s=96&d=mm&r=g\",\"caption\":\"Andrey Redko\"},\"description\":\"Andriy is a well-grounded software developer with more then 12 years of practical experience using Java\\\/EE, C#\\\/.NET, C++, Groovy, Ruby, functional programming (Scala), databases (MySQL, PostgreSQL, Oracle) and NoSQL solutions (MongoDB, Redis).\",\"sameAs\":[\"http:\\\/\\\/aredko.blogspot.com\\\/\",\"http:\\\/\\\/ca.linkedin.com\\\/in\\\/aredko\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/andrey-redko\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Elasticsearch Tutorial for Java Developers - Java Code Geeks","description":"Check out our Elasticsearch Tutorial where we cover a wide range of topics, from installation and operations, to Java API Integration and reporting!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html","og_locale":"en_US","og_type":"article","og_title":"Elasticsearch Tutorial for Java Developers - Java Code Geeks","og_description":"Check out our Elasticsearch Tutorial where we cover a wide range of topics, from installation and operations, to Java API Integration and reporting!","og_url":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2017-04-19T19:28:10+00:00","article_modified_time":"2023-12-11T08:13:40+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/04\/elastic-logo.png","type":"image\/png"}],"author":"Andrey Redko","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Andrey Redko","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html"},"author":{"name":"Andrey Redko","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/771a6504862edc45322776832cbce413"},"headline":"Elasticsearch Tutorial for Java Developers","datePublished":"2017-04-19T19:28:10+00:00","dateModified":"2023-12-11T08:13:40+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html"},"wordCount":715,"commentCount":0,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/04\/elastic-logo.png","keywords":["Elasticsearch"],"articleSection":["Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html","url":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html","name":"Elasticsearch Tutorial for Java Developers - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/04\/elastic-logo.png","datePublished":"2017-04-19T19:28:10+00:00","dateModified":"2023-12-11T08:13:40+00:00","description":"Check out our Elasticsearch Tutorial where we cover a wide range of topics, from installation and operations, to Java API Integration and reporting!","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/04\/elastic-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2017\/04\/elastic-logo.png","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2017\/04\/elasticsearch-tutorial-java-developers.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java","item":"https:\/\/www.javacodegeeks.com\/category\/java"},{"@type":"ListItem","position":3,"name":"Elasticsearch Tutorial for Java Developers"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/771a6504862edc45322776832cbce413","name":"Andrey Redko","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/16419ce8394173028eddaeb992859862bab50cfcf74589fa9bb9a3dd8bb27518?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/16419ce8394173028eddaeb992859862bab50cfcf74589fa9bb9a3dd8bb27518?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/16419ce8394173028eddaeb992859862bab50cfcf74589fa9bb9a3dd8bb27518?s=96&d=mm&r=g","caption":"Andrey Redko"},"description":"Andriy is a well-grounded software developer with more then 12 years of practical experience using Java\/EE, C#\/.NET, C++, Groovy, Ruby, functional programming (Scala), databases (MySQL, PostgreSQL, Oracle) and NoSQL solutions (MongoDB, Redis).","sameAs":["http:\/\/aredko.blogspot.com\/","http:\/\/ca.linkedin.com\/in\/aredko"],"url":"https:\/\/www.javacodegeeks.com\/author\/andrey-redko"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/65079","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/141"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=65079"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/65079\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/65382"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=65079"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=65079"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=65079"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}