Я пытаюсь понять, как правильно использовать Spring. Не синтаксически, но по назначению. Если кто-то использует Spring, то должен ли Spring-код заменить весь код создания бина? Когда использовать, а когда не использовать Spring, для создания экземпляра bean-компонента?
Может быть, следующий пример кода поможет вам понять мою дилемму:
List<ClassA> caList = new ArrayList<ClassA>();
for (String name : nameList) {
ClassA ca = new ClassA();
ca.setName(name);
caList.add(ca);
}
Если я настрою Spring, он станет примерно таким:
List<ClassA> caList = new ArrayList<ClassA>();
for (String name : nameList) {
ClassA ca = (ClassA)SomeContext.getBean(BeanLookupConstants.CLASS_A);
ca.setName(name);
caList.add(ca);
}
Я лично думаю, что использование Spring здесь - это ненужные накладные расходы, потому что
- Код проще читать / понимать.
- Это не очень хорошее место для внедрения зависимостей, так как я не ожидаю, что будет многократная / разнообразная реализация
ClassA
, которую я хотел бы свободно заменить использованием конфигурации Spring на более позднем этапе.
Я правильно думаю? Если нет, то где я иду не так?