Основной особенностью фреймворка Spring является его внедрение зависимостей и инверсия управления. Помимо этой функции, Spring предоставляет несколько модулей для расширения своих возможностей.
Перед публикацией вопроса вы должны хотя бы прочитать введение в справочную документацию Spring, поскольку она дает вам хорошее представление о структуре. Также вам следует прочитать раздел о базовых технологиях.