Dependency Injection for Java Developers
3.9 (34 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.
290 students enrolled

Dependency Injection for Java Developers

Your most comprehensive guide to modern dependency injection on the Java EE platform with CDI 2.0
3.9 (34 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.
290 students enrolled
Created by Luqman Saeed
Last updated 1/2019
English
Current price: $39.00 Original price: $194.99 Discount: 80% off
30-Day Money-Back Guarantee
This course includes
  • 5 hours on-demand video
  • 2 articles
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to Udemy's top 3,000+ courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Master how to build maintainable software applications with industry standard Java EE
  • Master how to build loosely coupled, highly testable software components on Java EE

  • Master the individual components of Contexts and Dependency Injection API

  • Master dependency injection in Java
  • Learn to write event based reactive software in Java
Course content
Expand all 113 lectures 05:10:29
+ Part 1 - A look at what Java EE really is
10 lectures 24:58
What is Java EE?
01:36
What is Java EE?
03:16
What is Java EE?
03:03
What is Java EE?
03:24
What is Java EE?
01:27
What is Java EE?
05:10
What is Java EE?
02:52
What is Java EE?
01:49
What is Java EE?
00:57
Project Work
01:24
Java EE Quiz
1 question
+ Part2 - CDI - Basics
10 lectures 27:26
Introduction
01:33
What is Inversion of Control?
03:21
What is Dependency Injection
01:49
What is Dependency Injection
02:39
CDI Features
02:10
Lifecycle Contexts
04:51
Typesafe Dependency Injection
03:45
Interceptors and Decorators
03:22
CDI Events
01:47
Service Provider Interface
02:09
+ Part 3 - CDI In Practice
59 lectures 02:34:33
Introduction
01:31
Prerequisite Software
03:23
Code Samples
01:04
Final Words
01:53
CDI on Java EE
02:55
Getting started with CDI on Java EE
01:05
CDI Bean Discovery
03:40
CDI Bean Discovery Modes
02:15
CDI Container - What is it?
03:47
CDI Getting Started - Code
02:39
Beans and Contextual Instances
05:10
CDI Injection Point - Field Injection
02:56
CDI Injection Point - Constructor Injection
02:46
CDI Injection Point - Method Injection
02:44
CDI Managed Beans
03:44
Bean Type of a Managed Bean
03:08
CDI Managed Beans - Session Beans
04:25
CDI Lifecyle Callbacks - PostConstruct
03:48
CDI Lifecyle Callbacks - PreDestroy
03:03
Interceptor Lifecyle Callbacks
02:13
Recap
01:47
CDI Fundamentals
5 questions

First written assignment

Written Assignment 1
00:12
Using the Java EE API Documentation
03:01
CDI Qualifiers
04:57
CDI Qualifiers
02:27
CDI Qualifiers - API Documentation
02:05
CDI Qualifiers With Value
02:27
CDI Stereotypes
04:41
CDI Built-in Qualifier - @Named
02:49
CDI Built-in Qualifier - @Default
01:31
CDI Built-in Qualifier - @Any
01:14
CDI Contexts
01:49
CDI Contexts - Session Scope
01:40
CDI Contexts - Request Scope
01:14
CDI Contexts - Dependent Scope
01:22
CDI Contexts - Conversation Scope
01:32
CDI Contexts - Application Scope
01:53
CDI Contexts - Stateless EJBs
01:44
CDI Contexts - Stateful EJBs
01:20
CDI Producers
04:02
CDI Producers - Scoping Returned Objects
04:31
Recap
01:50
CDI Detail
9 questions
Written Assignment 2
00:11
CDI - Interceptors
05:35
CDI Interceptors
03:06
CDI Interceptors - API Documentation
03:27
CDI Events
02:25
CDI Events
03:21
CDI Events
04:14
CDI Events
03:51
CDI Events - API Documentation
01:47
CDI Events - API Documentation
01:28
Running Code Sample - Contexts
02:10
Running Code Sample - Contexts
02:22
Running Code Sample - Producer
01:51
Running Code Sample - Qualifiers
02:32
Running Code Sample - Interceptors
02:59
Running Code Sample - Events
02:16
CDI Detail
3 questions
End of the beginning
02:41
+ Jakarta EE
3 lectures 17:02
What is Jakarta EE?
06:50
Jakarta EE - Whats New?
07:38
Jakarta EE Mailing Lists
02:34
+ Advanced CDI
13 lectures 28:21
Java EE 8 Introduction
02:07
Downloading Glassfish 5
02:20
Adding Glassfish 5 to NetBeans
01:32
Upgrading to Java EE 8
01:26
CDI 2.0 Primer
03:17
Synchronous Events
01:46
Synchronous Events
01:46
Synchronous Events - Running the Code
01:03
Synchronous Events - Running the Code
02:09
Synchronous Events - Running the Code
01:37
Asynchronous Events
03:03
Asynchronous Events
01:45
Asynchronous Events - Running the Code
04:30
+ Java EE Microservices
2 lectures 15:44
What is Payara Micro?
06:00
How do I deploy a Java EE app with Payara Micro?
09:44
+ Testing CDI with Arquillian
6 lectures 22:41
Introduction to Java EE Testing with Arquillian and JUnit
04:16
The Arquillian Website
00:55
Testing with Arquillian
06:24
Testing with Arquillian
05:25
Testing with Arquillian
04:11
Testing with Arquillian
01:30
Requirements
  • Basic knowledge of Java or any other strongly typed JVM language like Kotlin
  • A Java IDE- preferably NetBeans or IntelliJ
  • Java 8 installed
  • Apache Maven
  • Git SCM
Description

Are you a software developer? If not, are you aspiring to be one? If you answered yes, then I have good news for you! 

Dependency Injection is the cornerstone of good, decoupled software engineering principles. And this course is your ultimate guide to the latest Contexts and Dependency Injection (CDI 2.0) standard on the Java Platform. 

You will learn how the Java dependency injection framework - CDI - helps you write better code through the provision of

  • Powerful, extensible and well defined contextual lifecycles for components

  • A mechanism for decoupling application components through a typesafe event API

  • Typesafe interceptors for altering the behaviour of components at runtime

  • A well defined Qualifier system for easy isolation of beans

  • A Producer mechanism of converting almost any valid Java type to a CDI managed bean

  • A Stereotype system to group together common architectural patterns

  • Bindings for using business components on the web tier of your applications through Expression Language

All these and more will be covered in an exciting way through a mixture of detailed theoretical explanations and practical code samples, all the while using modern pedagogical means to keep you engaged and help you absorb your new knowledge. You are encouraged to be an active student by asking questions, participating in group discussions and helping your fellow students. 

If you have ever wanted to write clean code, this course is your best guide for that. You will pick up valuable tips along the way from your instructor's years of experience. This course will cover CDI 2.0 in detail, as well as equip you with the theoretical underpinnings of Java EE.  

Dependency Injection for Java Developers will cover

  • What Java EE is

  • How Java EE is evolved through the JCP

  • What a JSR is

  • What  Reference Implementation is

  • How to contribute to the advancement of Java

  • Contexts and Dependency Injection

  • Good software engineering principles and more

Dependency Injection for Java Developers is packed with so much that by the end of the course, you will feel confident to use your new found knowledge to help you write better, readable, maintainable and long lived software. 

So go ahead, click on the big green button to enroll now and be on your way to writing better software. See you in the course. 

Who this course is for:
  • Anyone who wants to master the art of writing loosely coupled software applications on the Java platform
  • Anyone who wants to master the art of writing maintainable software on the Java platform
  • Anyone who needs a firm grounding in the most important API on the Java EE Platform
  • Anyone who wants to master the newly released Java EE CDI 2.0
  • Anyone who wants to be a good Java EE software engineer
  • Anyone who wants to master dependency injection on the Java platform