Microservices With Spring Boot, Maven And Jpa
Published 12/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.43 GB | Duration: 10h 0m
Published 12/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.43 GB | Duration: 10h 0m
Learn about REST API Microservices with Spring Boot and Java Persistence API (JPA), HTTP Protocol, SOAP and REST
What you'll learn
Understand the fundamentals of Spring and Spring Boot
Understand monolithic and micro-service architectures (SOAP and REST etc.)
Understand the HTTP protocol
Understand how to develop restful web-services with Java and Spring
Requirements
Fundamental Java programming knowledge is needed
Description
This course is about microservices with Spring Boot and Maven. In this course we are going to talk about the basics of professional software engineering such as how to separate the code into multiple modules or how to use a build framework to build the final application. Before developing the micorservices from scratch - that wire all the included technologies together - we will consider these technologies on a one by one basis.Section 1 - Installationssetting up the environment installing Java, Eclipse, Maven and MySQLSection 2 - Spring and Spring Bootwhat is Spring and Spring Boot?the fundamental annotations in the Spring frameworkbean scopes and lifecyclesdependency injectionbuilding Spring applications with MavenSection 3 - Software Architectural Principleswhat is the monolith architecture?what are web-services?SOAP and REST web-servicesHTTP protocolthe microservice architectureSection 4 - Microserviceswhat are microservices?GET, POST, PATCH and DELETE mappings@RequestBody annotation@RequestParam and @PathVariable annotationscustomizing the HTTP request and responseSection 5 - Handling JSON (with Jackson)JSON and Jackson introductionignoring properties in the JSON representation@JsonProperty annotationdealing with date and timeSection 6 - Handling MySQL Databasehow to connect to a MySQL database?what is JDBC and JPA?using database related annotationsSection 7 - Validation and Exception Handlingvalidating beans and catching exceptions@ExceptionHandler annotation@ControllerAdvice annotationSection 8 - Transactionswhat is a transaction?implementing transactionspropagation types of transactionsSection 9 - RestTemplate and API Gatewaywhat is an API gateway?how to use RestTemplate to communicate between web-services?GET, POST, PATCH and DELETE operationsThanks for joining the course, let's get started!
Overview
Section 1: Introduction
Lecture 1 Introduction
Section 2: Setting up the Environment
Lecture 2 Installing Java
Lecture 3 Installing Eclipse
Lecture 4 Installing Maven
Lecture 5 Installing MySQL
Lecture 6 Installing Postman
Section 3: Spring and Spring Boot
Lecture 7 What is the Spring framework?
Lecture 8 First Spring application
Lecture 9 Spring containers
Lecture 10 Bean scopes
Lecture 11 Bean lifecycle
Lecture 12 Dependency injection
Lecture 13 Annotations I
Lecture 14 Annotations II
Lecture 15 @Qualifier annotation
Lecture 16 Why Spring Boot came to be?
Lecture 17 First spring boot application
Lecture 18 Using annotations in Spring Boot
Lecture 19 Different scopes and ObjectFactory
Lecture 20 Building the application with Maven
Lecture 21 Building the application with Eclipse
Section 4: Software Architectures
Lecture 22 The monolith approach
Lecture 23 What are web services?
Lecture 24 SOAP
Lecture 25 What is HTTP?
Lecture 26 REST services
Lecture 27 Microservice architecture
Section 5: Microservices
Lecture 28 Creating the project
Lecture 29 Handling requests with @GetMapping
Lecture 30 The architectural layers of microservices
Lecture 31 @GetMapping with repository
Lecture 32 Using @PathVariable
Lecture 33 @PostMapping and @RequestBody
Lecture 34 @DeleteMapping
Lecture 35 @PatchMapping
Lecture 36 @RequestParam and @PathVariable
Lecture 37 Getting the HTTP header
Lecture 38 Response body customization (ResponseEntity etc.)
Section 6: Jackson and Handling JSON
Lecture 39 Jackson and JSON introduction
Lecture 40 Ignoring properties and NULL values
Lecture 41 Dealing with unknown properties
Lecture 42 @JsonProperty
Lecture 43 Dealing with time
Section 7: Including MySQL Database
Lecture 44 What is JDBC?
Lecture 45 What is Java Persistance API (JPA)?
Lecture 46 @Entity and @Table
Lecture 47 @Embedded and @Embeddable
Lecture 48 Create and update dates
Lecture 49 Updating the service with database operations I
Lecture 50 Updating the service with database operations II
Lecture 51 Updating the service with database operations III
Section 8: Validation and Exception Handling
Lecture 52 Validation with annotations
Lecture 53 @ExceptionHandler
Lecture 54 Catching exceptions
Lecture 55 @ControllerAdvice
Lecture 56 Refactoring the exception handler class
Lecture 57 Dealing with regular expressions
Lecture 58 Validation in patch requests
Section 9: Car Rental Service Implementation
Lecture 59 Car rental service implementation I
Lecture 60 Car rental service implementation II
Lecture 61 Car rental service implementation III
Lecture 62 Car rental service implementation IV
Lecture 63 Car rental service implementation V
Lecture 64 Car rental service implementation VI
Section 10: Transactions
Lecture 65 What are transactions?
Lecture 66 Transaction implementation
Lecture 67 Transaction propagation types
Section 11: RestTemplate and API Gateway
Lecture 68 What is an API gateway?
Lecture 69 Creating the structure of the API gateway
Lecture 70 Creating the model
Lecture 71 Configuring the RestTemplate
Lecture 72 GET method
Lecture 73 POST method
Lecture 74 DELETE method
Lecture 75 PATCH method
Section 12: GatewayVehicleController - Programming Exercise
Lecture 76 Programming exercise
Lecture 77 Exercise solution
Section 13: Appendix #1 - Stream API
Lecture 78 What is the Stream API?
Lecture 79 Streams with numbers
Lecture 80 Streams with strings
Lecture 81 Collections and streams
Lecture 82 Streams with custom objects - part 1
Lecture 83 Streams with custom objects - part 2
Lecture 84 Exercise - filtering
Lecture 85 Solution - filtering
Lecture 86 External and internal iteration
Lecture 87 Processing files with streams
Lecture 88 Short-circuiting and loop fusion
Lecture 89 map() and flatMap()
Lecture 90 Exercise - mapping
Lecture 91 Solution - mapping
Lecture 92 Optionals and other important concepts
Lecture 93 OptionalInt, OptionalFloat and OptionalDouble
Lecture 94 allMatch(), noneMatch(), findFirst() and findAny()
Lecture 95 Parallelization - example #1
Lecture 96 Parallelization - example #2
Lecture 97 Parallelization - example #3
Section 14: COURSE MATERIALS (DOWNLOADS)
Lecture 98 Slides
Lecture 99 Source code
Beginner Java developers interested in Spring, Spring Boot and Microservices