Practical Java : Spring Boot REST API with Elasticsearch
4.1 (59 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
502 students enrolled

Practical Java : Spring Boot REST API with Elasticsearch

Java (Spring Boot 2), REST API, Elastic search, Github to develop & monitor back-end applications
4.1 (59 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
502 students enrolled
Last updated 7/2020
Current price: $114.99 Original price: $164.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 9 hours on-demand video
  • 18 articles
  • 40 downloadable resources
  • 2 coding exercises
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Various tricks offered by Spring to ease your programming effort
  • Practical Knowledge of Spring Boot : REST API, Unit test
  • Document your REST API and keep your source code sync with documentation
  • Learn the basic of source code version control
  • Understand basic usage of Elastic search & Kibana, and how to integrate java code with them
  • Create basic data visualization & dashboard using Elastic search & Kibana
Course content
Expand all 83 lectures 08:59:47
+ Introduction
3 lectures 08:41
Course Structure
Tips : How To Get Maximum Value From This Course
+ Technology in This Course
6 lectures 13:23
About This Section
Java Development Environment - A Note
Executing API

Basic usage of git & gitlab

Source Code Version Control
+ Installation
10 lectures 16:54
Download Links
Install Java
Install Eclipse
Install Postman
Install Git
IMPORTANT : Elasticsearch Version
Install Elasticsearch
Technology Documentation
2 lectures 22:26
Overview of REST API
Overview of JSON
+ The First Java Code with REST API
9 lectures 01:05:58
Note : Tools Layout is Different? Don't Worry
More About Spring
Note : Eclipse Support for Java 11
Hello Spring Boot
Try API Using Postman

Consuming Hello World API with different HTTP methods (GET, POST, PUT, DELETE).

HTTP Method in Hello World
2 questions
Practical Tips : Using Eclipse
Gradle Build Tools
Automatic Reload with Spring Boot Devtools
+ Create Deployment Package
3 lectures 13:17
Create Executable Jar
Spring Boot Configuration
Create Deploy-able War
+ Version Control With Git
4 lectures 36:16
Version Control, Git, & Github
Git Basic Command
Creating a Github Repository
Git Basic Usage
+ Basic Logging
2 lectures 10:09
Practical Tips : Logging Java Codes
Version Control & Log Files
2 questions
Quiz Answer : Explanation
+ Spring REST Server- Producing JSON (Part One)
8 lectures 39:27
What We Will Build in This Section : JSON
Creating JSON Response
Practical Tips : Eclipse Package Presentation
Practical Tips : Request using chrome & Format Returning JSON
Practical Tips : @GetMapping or @RequestMapping?
Creating Request With JSON Body
At this point, sending HTTP POST result in error. Why did this happens?
1 question
Fix the
1 question
Quiz Answer : Explanation (and a Little Bit More)
Practical Tips : Useful MIME Type
+ Spring REST Server- Producing JSON (Part Two)
7 lectures 01:06:31

Test your knowledge by answering this quiz.

If you already know the answer, feel free to skip this quiz.

Why the JSON response does not show new attributes
2 questions
Display the new atttributes
1 question
Fixing Car & Generate Random Car
Working with Collections
Java Class as JSON Attribute
Practical Tips : Validate JSON String
More Jackson Annotations

Some questions related to Jackson annotations, some may be not covered in video, but it worth to try

Jackson annotations
2 questions
Useful Resource for This Section
  • Familiar with basic Java Programming. You need to know the basic concept (class, interface, constructor) + basic syntax (loop, statements)
  • Windows 10 laptop / PC. The content of this course is applicable on Mac / Linux, but for installation section, I only provides Windows.
  • A willingness to learn and a good spirit

IMPORTANT! Elasticsearch Version

As of June 2019, latest Elasticsearch version is on 7.x. However, Spring in this course has not support Elasticsearch 7.x yet.

This course works with Elasticsearch 6.x.

Of course, this course is not only about Elasticsearch. You can still get many valuable knowledge even if not use Elasticsearch 7.


As a developer, we need to work productively. In Java programming, one way to achieve this is by Using Spring Framework. Recognized as one of the popular framework in Java world, Spring will increase developer productivity a lot. It has wide arrays of technology that can be used on almost any enterprise use-cases.

This course is suitable for you, if you already write codes (especially Java) for some times, and want to know new things, that relevant to today's job demand. Or you just tech savvy that want to sharpen your Java programming skills to get more advanced level. In some of companies, you might have been work with legacy Java systems that already 5 years old or more. In that case, this course is suitable to refresh your mind, keep updated and get ready to adapt to new technology.

You don't have to be advanced Java programmer to learn this course, although some basic Java programming is required. I will teach you step by step, started from little theory to give you some clarity, and most of the times we will do practical hand-codes, or using tech-related-tools.

What Will You Learn?

In this course, we will use following technologies

  • Java

  • Spring & Spring Boot

  • Eclipse & Spring Tools Suite

  • Gradle

  • Postman

  • Elasticsearch

  • Spring Data for Elasticsearch

  • Git & Github

  • Logging with logback

  • Automatic API documentation with Swagger

You will get introduction and practical lesson how to using them during your journey as Java developer.

Note for Non-Windows Users

I’m very sorry, but currently I don’t have Mac or Linux environment, so I can’t show you step-by-step video to install our tools in environment other than Windows. You can find step-by step installation guide on each product's page but currently not in this course. However, the content of the course is applicable for any operating system.

What "Practical" Means?

As the title says, we will learn practical things about Java, especially Spring Framework. This course's purpose is preparing you to be ready to handle  real-life applications. Of course, real-life applications has a lot more complexity and a lot more difficult that what we will learn in this course. Java framework itself has been around for 20 years, with Spring Framework has been live since 2003. With such long history, it is impossible to tell everything in just one course. This course is to preparing you to take the first few steps for begin journey as advanced Java developer, particularly using Spring Framework.

In this course, you will get several hand-on code, and tips for best-practice in REST API programming with Spring Boot.

Is This Course Suitable for You?

To answer this, please see the preview video on section 1.

If you have basic understanding of Java, and eager to learn, then this course is suitable for you. But if you are a seasoned Java developer that constantly update your knowledge, you might even smarter then me, and this course might be too easy for you.

Please check the course content to find out if this course can meet your expectation.

You Get Involved in This Course

Being a programmer need discipline and persistence. You need to learn. You will get errors, fix, and improve it -again and again- until you become good. This course will give you some quizzes and coding exercises, where you can get involved, and practice what you have learned. Of course, not all of you happy with this approach. So I design the quiz and coding exercises to be optional. Work with them if you like, or straight to the answers and practice directly.

Why Choose Me as Your Instructor?

-- Experience --

I have been developing Java apps for enterprise since early 2010, from old-style JSP & JDBC, up to Spring framework which is currently most popular Java framework. Based on real-life experience, I know what should be done to create program that not just functionally runs, but also technically good. I experience programmers pain point, or operation team pain point and how to handle them.

I have been lead team as Engineering Manager & Architect for several years, and as a part of responsibility, coaching and teaching tech skills also part of my job. So I can deliver good lectures, based on real-life experience on Java programming.

-- Serious --

I became instructor not for social purpose, but to earn some money. Thus, you are my customers, and I try my best not to disappoint you. I will try to give best value for you, so you feel happy spend your money, and take another of my course. I will try to answer your question, as long as it still in this course's scope.

Elasticsearch & Kibana for Java Developers

In this course, I will introduce you to technology that maybe you're not familiar with: Elastic search & Kibana.

These two technologies are quite popular. Knowing those two things will be an added value for every developer. Elasticsearch is commonly used as search engine because it is very fast. We will learn basic data manipulation with Spring Data Elasticsearch.

We will also learn about Kibana, an open source tools to visualize data (example : create real-time chart) and creating dashboard from several charts.

API Unit Testing & Documentation

You will learn how to write unit testing. That is a source code to test source code. We can do unit testing for repetitive test tasks, and helping make sure that no broken code due to some changes.

Also, in this course we will learn how to create API documentation with almost no effort, because we will use library to help us create API documentation automatically. The API documentation output are: HTML, or JSON format that can be transferred to more sophisticated API documentation tools.

Full English Subtitle

This course comes with perfect English subtitle. I myself not a native English speaker, so to give better experience for students (you), I provides accurate English subtitle for all lectures.

This course is safe!

This course comes with a 30 day money-back guarantee. That means if you are not satisfied with this course, just let me know and I’ll give your money back 100%. So no risk at your side for taking this Java course. You can be equip yourself with knowledge for real-world: Java, Spring, database, version control with github, REST API, and many more. You can go on, develop good enterprise or start-up software, potentially make an awesome career (and money) for yourself. Or you get your money back if you don’t like it.

Of course, you can see some preview course, all for FREE. Just find out the course content marked as Preview and play the video. No credit card required, no question asked, just play the video.

Road to Microservice

REST API is one important pillar of microservice architecture. In micro service, we use REST API and asynchronous messaging for inter-service communication. Services communicating by exchanging messages over REST API, or messaging channels like RabbitMQ.

In this course, you will learn the theory and hand-code of messaging with REST API your one step ahead toward modern micro service architecture.

Who this course is for:
  • Anyone with some basic knowledge in Java and an interested in web programming
  • You wants to learn about technology REST API using Java, as a learning path toward microservice architecture
  • Java Developer who wants to improve their skill & efficiency by using Spring Framework
  • Those who curious about Elasticsearch and Java code to work with it