Pro CDI 2 in Java EE 8 : an in-depth guide to context and dependency injection - Beernink, Jan; Tijms, Arjan (Apress, 2019)
Use CDI and the new CDI 2.0 to automatically manage the lifecycle of your applications beans using predefined scopes and define custom lifecycles using scopes. In this book, you will see how you can implement dynamic and asynchronous communication between separate beans in your application with CDI events. The authors explain how to add new capabilities to the CDI platform by implementing these capabilities as extensions. They show you how to use CDI in a Java SE environment with the new CDI initialization and configuration API, and how to dynamically modify the configuration of beans at application startup by using dynamic bean building. You will: Use qualifier annotations to inject specific bean implementations Programmatically retrieve bean instances from the CDI container in both Java SE and Java EE when injecting them into an object isnt possible Dynamically replace beans using the @Alternative annotation to, for example, replace a bean with a mock version for testing Work with annotation literals to get instances of annotations to use with the CDI API Discover how scopes and events interact.