S J.

S J. Programista

Temat: Wyszukiwanie odpowiednich kontrolerów przez aplikację.

Witam,

Jak Spring MVC odnajduje daną metodę oznaczoną adnotacją @RequestMapping ?
Czy po prostu przy uruchomieniu serwera, zgodnie z dyrektywą:

<context:component-scan base-package="" />

skanuje dany pakiet w którym znajdują się nasze wszystkie kontrolery, a w nich metody i zapisuje je w pamięci ? Czy może dzieje się to jakoś inaczej?

Zastanawiam się czy jest to wydajne w sytuacji gdy mamy np. 1000 kontrolerów?
Piotr T.

Piotr T. Spring/Microservices

Temat: Wyszukiwanie odpowiednich kontrolerów przez aplikację.

Sławomir J.:

Zastanawiam się czy jest to wydajne w sytuacji gdy mamy np. 1000 kontrolerów?
nic nie zastąpi bezpośredniego doświadczenia napisz 1000 kontrolerów i sprawdź

konto usunięte

Temat: Wyszukiwanie odpowiednich kontrolerów przez aplikację.

Sławomir J.:
Witam,

Jak Spring MVC odnajduje daną metodę oznaczoną adnotacją @RequestMapping ?
Czy po prostu przy uruchomieniu serwera, zgodnie z dyrektywą:

<context:component-scan base-package="" />

skanuje dany pakiet w którym znajdują się nasze wszystkie kontrolery, a w nich metody i zapisuje je w pamięci ? Czy może dzieje się to jakoś inaczej?

Zastanawiam się czy jest to wydajne w sytuacji gdy mamy np. 1000 kontrolerów?

Wewnętrznie stosowana jest tam LinkedHashMapa, która z założenia ma dobrą wydajność funkcji get (z tego co się orientuje O(1)).

Nie przejmowałbym się zatem wydajnością tego rozwiązania.

Jedyne co, to dość długi może być deploy, gdyż Twoje 1000 mappingów musi być załadowane do mapy.

konto usunięte

Temat: Wyszukiwanie odpowiednich kontrolerów przez aplikację.

Dodam, że żeby przyspieszyć skanowanie pakietów, warto umieścić filtry w konfiguracji xml-owej Springa. Szalenie przydatne, gdy odziedziczymy projekt, w którym ktoś zaszalał z organizacją pakietów :D
przykład:
http://www.mkyong.com/spring/spring-filtering-componen...

pzdr



Wyślij zaproszenie do