Library

Course: Spring Boot Microservices with JPA

Spring Boot Microservices with JPA

  • Life Time Access
  • Certificate on Completion
  • Access on Android and iOS App
About this Course

This course is a practical course which explains how to realise a microservice infrastructure in order to realise a full-stack web application composed by a "framework-less" Single Page Application and two restful Spring Boot microservices interacting with each other and with two different databases thanks to the implementation of the JPA (Java Persistence Api).

You'll have the basis to generate fastly a microservice infrastructure, to organise your application using different layers according to the "SOLID" principle and following the MVC pattern.

You will have the instrument to organise your communication protocols using simple and effective rules, to implement restful web services which communicate with Json Messages.

This is course has the same topic of the Italian course Sviluppo Web a Microservizi con Java Spring Boot e Ajax" so it can easily considered as its English version. The example developed is different but with the same topics: microservices, Spring Boot, JPA and Rest calls.

Who is the target audience?

  • Anybody who wants to understand microservice infrastructure and the difference existing between monolithic application and microservices
  • Anybody who wants to learn Spring Boot and how to realize fastly a microservice infrastructure using this precious instrument
  • Anybody who wants to understand the difference between the classical use of Spring MVC and its implementation through Spring Boot
  • Anyone who wants to learn the basis of JPA (Java Persistence Api) in order to interact with Databases
  • Anyone who wants to learn how to implement Restful Web services using a microservice infrastructure
  • Anyone who wants to learn how to consume Restful web service either from the user interface than from server-side code
  • Anyone who want to have a basic idea on Single Page Applications and how they works
  • Anyone who wants to realise a full stack web application using the most modern technologies and approaches
  • Anyone who wants to learn how Ajax calls and javascript can be used to let our web pages become dynamics
  • Anybody who wants to understand how to generate a dynamic web page using multiple resources con temporarily
Basic knowledge
  • A few basis of Object Oriented Language in order to understand better the practical implementation of the code
What you will learn
  • Create two Spring boot restful web services implementing the JPA for the interaction with the databases
  • Create a full stack web application composed of a microservices infrastructure and a single page application
  • Learn how two microservices can communicate with each-other and exchange information through JSON messages
  • This is course has the same topic of the Italian course "Sviluppo Web a Microservizi con Java Spring Boot e Ajax" so it can easily considered as its English version. The example developed is different but with the same topics: microservices, Spring Boot, JPA and Rest calls
Curriculum
Number of Lecture: 64
Total Duration: 04:22:34
Let's introduce some concepts!
  • Intro course  
  • Monolithic App vs Microservice  
  • War file vs "fat Jar"  
  • Spring Pills  
  • MVC Pattern  
  • Http Protocol, cookies and Json Web Tokens  
  • Maven & other resources  
Let's create our first microservice!
  • Spring Initializer  
  • Creation of packages and first "POJO"  
  • JPA annotations  
  • JSR-303 Validation  
  • Let's create the second "POJO"  
  • Create the "DAO" interface for the first "POJO"  
  • Create the "DAO" interface for the second "POJO"  
  • EncryptionUtils class  
  • The CommandLineRunner interface  
  • Let's fill the H2 database: part 1  
  • Let's fill the H2 database: part 2  
  • Let's run our app  
  • The Spring Validator  
  • The ViewResolver  
  • let's return a Java Object  
  • JacksonLibrary  
  • Simple Data Binding  
  • Data Binding with JSR-303 validation  
  • Data Binding with JSR-303 validation and BindingResult  
  • Data Binding with Spring validator  
  • Data Binding with JSR-303 and Spring validation  
  • The ResponseEntity  
  • The JsonResponseBody class  
  • JwtUtils  
  • Custom Exceptions  
  • Let's create the services structure  
  • let's define LoginService interface  
  • let's implement LoginService: part 1  
  • let's implement LoginService: part 2  
  • let's implement ToDoService  
  • Implementing RestController: part 1  
  • Implementing RestController: part 2  
  • Implementing RestController: part 3  
  • Implementing RestController: part 4  
  • Implementing RestController: part 5  
  • Implementing RestController: part 6  
  • Implementing RestController: part 7  
  • let's test our microservice with Postman  
Let's implement our second microservice!
  • Overview on the structure  
  • let's create the MySQL database and the Spring Boot microservice  
  • adjusting pom.xml file and application.properties  
  • let's create the packages  
  • Statistics "POJO"  
  • StatisticsDao interface  
  • JsonResponseBody  
  • Overview on StatisticsService  
  • RestTemplate  
  • Let's implement StatisticsService: part 1  
  • Let's implement StatisticsService: part 2  
  • Implementing the Controller  
  • Let's test both the microservices with Postman  
Let's implement the Single Page Application!
  • Overview  
  • Let's explain the html structure  
  • Let's explain the javascript structure  
  • Let's test the page  
  • Some improvements  
  • Congratulations!  
Reviews (4)
5 months before
Superb review of Spring MVC. Really easy to follow. Hope you make more!
3 months before
very well explained
2 months before
3 weeks before
Thank Alessandro, a great course and also free of charge. I really enjoyed following it. I can recommend some improvements, I hope you do not mind, I am a MOOC addict and have a lot of experience in teaching. This is what I would add to the course: 1) I would point to the famous links to the resources that you mention on the videos but that are not present (I found your github page, so tht was not a problem for me), and 2) I would add one or two "classical" slides per subject, with a diagram of what you are going to do in the video or video section. Something like: We are going to do A, B, C, this you need to reach objectives X, Y, Z. Anyway, thanks again and best regards from Belgium!