Вернуться к содержанию курса
Основы фреймворка Spring
Материалы для самоподготовки
Основные материалы
- Видео: Spring Framework - Java для тестировщиков
- Видеоуроки - Основы Spring
- Документация на русском
- Видео: Spring-потрошитель, часть 1
- Видео: Spring-потрошитель, часть 2
Дополнительные материалы
- Презентация по Spring Core
- Spring Core documentation: Container
- Spring Core documentation: Beans
- Spring Core documentation: Dependencies
- Spring Core documentation: Scopes
- Spring Core documentation: Bean Lifecycle
Практическая работа
Репозиторий с шаблоном практической работы
Вопросы для самоконтроля
Spring Core
- Что такое
Inversion of Control
?
- Объясните суть паттерна
Dependency Injection
. Как он связан с IoC
?
- Что такое
ApplicationContext
? Как он связан с BeanFactory
?
- Что такое
bean
? Чем он отличается от обычного джава-объекта?
- Какие виды инжектирования зависимостей бывают? Есть ли разница между ними?
- Что такое
bean definition
? Как можно их объявлять?
- Что происходит с момента запуска Spring-приложения до его начала работы? Что происходит в этом процессе с бинами?
- Что означают аннотации
@PostConstruct
и @PreDestroy
?
- Как пометить класс как
bean
? В XML-based, Annotation-based, JavaConfig?
- Как заинжектить
bean
в другой bean
? В XML-based, Annotation-based, JavaConfig? Возможно ли заинжектить bean
в обычный класс?
- Что такое ленивая инициализация бина? Как и когда мы можем её активировать?
- Что такое
singleton scope
? Чем он отличается от prototype scope
?
- Мы хотим заинжектить в поле типа
Integer
случайное число. Как это сделать?
- Для чего мы пишем аннотацию
@Autowired
? В чем отличие от @Inject
?
- Для чего нужны аннотации
@Component
, @Service
@Repository
и @Controller
? Есть ли у них отличия?
- Как загрузить значение из проперти-файла в джаву, используя Spring?
- В чем вы видите преимущества и недостатки следующих подходов в конфигурировании: XML-based, Annotation-based и JavaConfig?