Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
As noted in the previous chapter, Spring is a modular POJO framework that provides more than 130 packages for supporting Web and enterprise application development. At its core, Spring is a container that can manage the entire life cycle of your application objects. In this chapter, I will begin to delve into this core—the Inversion of Control (IoC) container and the Dependency Injection (DI) design pattern.
The container implements the DI pattern that allows you to keep the dependencies between different objects dynamic. For example, you can have an object that needs a reference to another object or to an external resource like a mail server. In our user manager application, the UserServiceImpl class has a reference to both MailDao and UserDao objects. You need to save the user to the database and send out the confirmation email.