Spring core concepts with java based configurations