
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
30.12.2015, 14:31
|
|||
|---|---|---|---|
SpringMVC: зачем нужны 2 контекста? |
|||
|
#18+
В книге SpringInAction сказано, что WebApplicationContext объекта класса DispatcherServlet нужен для настройки обработки запросов (контроллеров, view resolver-ов), а "корневой" WebApplicationContext нужен для хранения там остальных бинов. Но я вот щас переопределил метод getDispatcherWebApplicationContextSuffix() класса AbstractSecurityWebApplicationInitializer, и у меня бин "springSecurityFilterChain", как впрочем и "securityConfig", успешно разместился в контексте сервлета. Если это работает, то почему бы все бины просто не располагать в контексте сервлета, зачем нужно ещё настраивать контекст приложения? Код: java 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.12.2015, 19:52
|
|||
|---|---|---|---|
|
|||
SpringMVC: зачем нужны 2 контекста? |
|||
|
#18+
skywriter, Эта тема неплохо объяснена, например, в этом вопросе на stackoverflow. Та же тема в официальном спринговском руководстве . Если коротко и своими словами, при использовании Spring MVC формируется иерархия контекстов. WebApplicationContext содержит информацию о классах, связанных с работой MVC-фреймворка (контроллеры, вью-резолверы и т.д.), а также позволяет непосредственно взаимодействовать с сервлет-контекстом. "Корневой" контекст содержит информацию о классах, имеющих отношение к бэкенду (ДАО/репозитории, сервисы и т.п.). Из WebApplicationContext'а можно обращаться в "корневой", но не наоборот. Такое разграничение существует из тех соображений, что в приложении может быть несколько WebApplicationContext'ов (пользовательский веб-интерфейс и REST-сервис, например). В книжке Pro Spring 3 по этому поводу приводится, например, такая диаграммка: На диаграмме есть "корневой" контекст (слева) и два WebApplicationContext'а (справа), обслуживающие разные сервлеты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&tablet=1&tid=2124491]: |
0ms |
get settings: |
4ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
177ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
23ms |
get tp. blocked users: |
1ms |
| others: | 271ms |
| total: | 504ms |

| 0 / 0 |
