Play Framework supports DI, which is one of the popular Design Patterns used to decouple Application components behavior from Application components dependencies resolution.
In simple terms, DI means resolving dependencies automatically by server/container, but not by the developer.