Я очень новой для весны, так что я мог бы задать глупый вопрос, но все равно ...используя @Autowired много раз
Я построил Spring MVC 4.0 приложения.
мои настройки, как это:
Controller >> Услуги >> DAO
в уровне контроллера я использую около 4 до 5 различных @Autowired
переменные, как этот
@Autowired
private ClientService clientService;
@Autowired
private CommentService commentService;
@Autowired
private SearchService searchService;
В уровне обслуживания I Autowire также несколько DAO
@Autowired
SearchDAO searchDAO;
@Autowired
private ActivityDAO activityDAO;
@Autowired
private UserService userService;
I имеют около 10 различных контроллеров, и в большинстве из них I @Autowire
те же услуги, так что мой вопрос в этом или нет?
Можно ли использовать @Autowire
столько раз, сколько мне нужно или принесет слишком много памяти? Будет ли это иметь некоторые другие последствия для моего приложения?
Я использую Spring 4.0 + спящий режим JPA
Я бы не стал беспокоиться об использовании памяти, но так много зависимостей может быть признаком нарушая «принцип единой ответственности». Это не сложное и быстрое правило, но есть такая возможность, что ваши классы имеют слишком много обязанностей. Возможно, вы можете разбить их на более мелкие услуги. –
Бобы весны по умолчанию одиночные, поэтому существует только один экземпляр. Нет проблемы с памятью – Jens
Я согласен с Али. Возможно, вы захотите разделить свои контроллеры так же, как и – Schrieveslaach