There are three types of dependency injection:
==>Constructor Injection (e.g. Pico container, Spring etc): Dependencies are provided as constructor parameters.
==>Setter Injection (e.g. Spring): Dependencies are assigned through JavaBeans properties (ex: setter methods).
==>Interface Injection (e.g. Avalon): Injection is done through an interface. Note: Spring supports only Constructor and Setter Injection