Microservices with Spring Boot
- What is API & Web Application? Why API is needed in web application?
- What is Restful API & SOAP Based API?
-
Software Architecture pattern: ➢ Client-Server Architecture ➢ MVC Architecture ➢ Multi-tiered Architecture ➢ Monolithic Architecture ➢ Service Oriented Architecture (SOA) ➢ Micro Service Architecture
- Advantages & Disadvantages of Micro Service Architecture.
- Difference between web server and Application server.
- JAR vs WAR vs EAR in web-based java application.
- What is HTTP & HTTPS protocol? Various HTTP method & HTTP Status code (Briefly)
- Overview of Core Spring Framework and Spring MVC.
-
Introduction of Spring Boot framework for creating micro service.
- Important annotation of Spring boot ad Spring framework: ➢ @SpringBootApplication ➢ @EnableAutoConfiguration ➢ @ComponentScan ➢ @Configuration ➢ @RestController ➢ @RequestMapping ➢ @Controller ➢ @GetMapping ➢ @PostMapping ➢ @PutMapping ➢ @DeleteMapping ➢ @PatchMapping ➢ @Component ➢ @Service ➢ @Repository ➢ @Transactional ➢ @RequestBody ➢ @Autowired ➢ @Scope ➢ @Qualifier ➢ @ResponseBody: ➢ @PathVariable ➢ @RequestParam ➢ @PathParam ➢ @Required ➢ @Import ➢ @Bean ➢ @ControllerAdvice ➢ @ExceptionHandler ➢ @ResponseStatus ➢ @ImportResource ➢ @PropertySource ➢ @PropertySources ➢ @Value ➢ @Profile ➢ @Scheduled ➢ @EnableScheduling ➢ @Async ➢ @EnableAsync ➢ @Schedules
- Set up development environment: Java 8 + Maven 3.3.x + IDE + PostMan.
- Maven Build tool and Dependency hierarchy.
- RESTful Service Project template with Spring Boot by Spring initlializr.
- Create first RESTful Service.
- Spring boot inbuilt web server.
- Power of Spring Boot DevTools Jar
- Create a CRUD operation API using Collection framework and Spring Boot?
- Introduction of Spring JPA and its annotation (Javax.persistance API annotation)
- understand common term - POJO/DTO/Model/Entity class
- Introduce Lombok framework for clean code.
- Create CRUD operation RESTful Services using in memory Database (H2)
- Write API documentation using Swagger framework.
- Spring various properties configuration
- Create CRUD operation RESTful Services using RDBMS Database (MySQL)
- Spring Data JPA
- Write custom SQL query in JpaRepository for accessing DB.
- Create RESTful Services using NoSQL Database (MongoDB)
- Setting Logger in the RESTful Services.
- Testing RESTful webservice using postman or Rest Client and Swagger inbuilt tool.
- Adding bean or pojo class validation with javax validator.
- Writing custom response mechanism in API
- Introduce custom exception handler mechanism.
- Monitoring APIs with Spring Boot Actuator.
- Introduction and commonly used operation of Git-Repository for working with multiple team member
- Understand Spring cloud and micro service
- Eureka Discovery service creation & start up
- User micro service creation (enable discovery client cloud)
- Access user webservice endpoint via Discovery service
- Create account management micro service creation (enable discovery client cloud)
- Access account management webservice endpoint via Discovery service
- Introduction of ZULL API Gateway and Create ZULL API gateway micro service
- what is load balancer and how it’s work by ZULL
- User micro service login mechanism
- Enable Spring security on API Gateway (ZULL)
- Inter micro service communication ways: direct API call/ JMS implementation / netflix Feign client
- Demonstrate with feign client
- Introduction of Hystrix circuit breaker for micro service error handling
- Introduction of Zipkin
- Setting up account in AWS
- Creating in AWS EC2 instance, Connect to EC2 instance
- Basic introduction of docker and installation in AWS EC2 instance
- Run micro service in EC2 docker container
- Miscellaneous (Like- JVM Performance Tuning, Java 8 Features, Code Analysis)
- Bonus Spring Batch + Realtime Project Experience + Interview QA
- Linux Command Cheat Sheet
- Git Cheat Sheet
- SQL Query & Join Cheat Sheet
- Interview Question Guide
- Record Session, Documents Guide
- Q/A