Spring core concepts with annotation based configurations