Since Spring 3.0, Spring supports the standard JSR 330: Dependency Injection for Java. In a Spring 3 application, you can use
@Inject
instead of Spring’s@Autowired
to inject a bean.@Named
instead of Spring’s@Component
to declare a bean.
When should I use what?