DEV Community

Cover image for Learn Spring 5 - An Ultimate Guide to Spring 5 Core
Java
Java

Posted on

Learn Spring 5 - An Ultimate Guide to Spring 5 Core

Learn Spring 5 - An Ultimate Guide to Spring 5 Core

A comprehensive guide on Spring fundamentals.

Whether you are a complete beginner on Spring Framework or an experience Spring developer, there are so many take ways from this course.

It covers the following Spring concepts:
Module 1: Course Overview

  • Introduction
  • What we need
  • Target Audience
  • Prerequisite
  • Course Walk through
  • What won’t be covered
  • Module summary

Module 2: Set up the development Environment

  • Introduction
  • Installing Java
  • Installing Maven
  • Installing - Spring Tool Suite
  • Creating Maven Project in Spring Tool Suite
  • Installing - Intellij IDEA
  • Creating Maven Project in Intellij Idea

Module 3: Spring Core Introduction

  • Spring Overview
  • Spring History
  • Spring Modules
  • Dependency Management: Traditional Ways
  • Dependency Management: Dependency Injection
  • Concepts of POJO and Bean
  • Inversion of Control : Spring IOC Container
  • Bean Factory Interface
  • ApplicationContext Interface
  • Configuring beans: XML based, Annotation and Java Config configuration
  • Module conclusion

Module 4: XML Based configuration

  • Introduction
  • Configuring POJOs with XML based configuration
  • ClassPathXmlApplicationContext
  • Setter based dependency Injection
  • Constructor based dependency Injection
  • Constructor vs Setter based Injections
  • Circular dependencies
  • Composing XML-based Configuration Metadata
  • Referencing Other beans
  • Inner Beans
  • Handling Java Collections
  • Merging Collections
  • Depends-on
  • Lazy-Initialization

Module 5: Autowiring

  • Basics of Autowiring
  • Autowiring Types,
  • No Autowiring ,
  • Autowiring byName,
  • Autowiring byType
  • Autowiring constructor
  • Issues with Autowiring

Module 6: Java Configuration

  • Configuring beans with Java Configuration
  • Component scan with @ComponentScan
  • @Configuration and @Bean Annotation
  • @Component, @Configuration, @Service and @Repository annotations
  • Constructor Injection
  • Autowiring POJOs
  • @Primary Annotation
  • @Qualifier Annotation
  • Importing Configuration
  • @Scope Annotation
  • @Lazy Annotation
  • @DependsOn

Module 7: Spring Beans in Depth

  • Introduction
  • Bean Life Cycle Callbacks
  • @PostConstruct and @PreDestroy annotations
  • Bean Scope
  • Bean Post Processor
  • POJO Creation with factory methods - Static factory, instance method and Spring factory bean
  • Managing environments - @profile annotation
  • Spring Aware Interfaces
  • BeanNameAware
  • BeanFactoryAware
  • ApplicationContextAware
  • MessageSourceAware
  • ResourceLoaderAware
  • EnvironmentAware

Module 8: Spring Aspect Oriented Programming

  • AOP Introduction
  • Core AOP Concepts
  • What is Aspect?
  • Join Point
  • What is Advice?
  • Pointcut
  • AOP Proxy
  • Aspectj
  • Weaving
  • Aspectj and @EnableAspectJAutoProxy annotation
  • Advice Annotations: @Before, @After, @AfterReturing, @AfterThrowing, @Around
  • @Before and @After Annotation
  • @AfterReturning Annotation
  • @AfterThrowing Annotation
  • @Around
  • Demostration

Module 9: Spring Task Executor

  • Introduction to Java Executor, ExecutorService
  • Runnable, Callable and Future
  • Threadpool - Fixed thread pool , Cached thread pool, Single thread executor, scheduled thread pool executor
  • Spring TaskExecutor
  • Spring SimpleAsyncTaskExecutor
  • Spring SyncTaskExecutor
  • Spring TaskExecutorAdapter

Module 10: Communication between Beans - ApplicationEvent Management

  • Introduction
  • ApplicationListener Interface
  • ApplicationEventPublisher
  • Example

Module 11: Conclusion

  • Source Code
  • Course Aummary
  • WhatsNext

What you'll learn

  • Spring Framework Core Concepts
  • Spring History
  • Environment Set up in STS and Intellij Idea
  • Spring Dependency Injection
  • Configuring Spring IoC Container through XML configuration
  • Configuring Spring IoC Container through Java annotation configuration
  • Spring Bean Autowiring - ByName, ByType, Constructor
  • Spring Bean Life Cycle Callbacks, Bean Post Processor,
  • ...

Top comments (1)

Collapse
 
gadrawingz profile image
Gad Iradufasha

I'm fully Springer!
That's a great article