http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#overview-usagescenarios