ZAWWW-2st1.2-w04.tresc-1.0-Slajd9
Stanowy czy bezstanowy?
Wybór między oferującym większą funkcjonalność komponentem stanowym a bezstanowym nie jest oczywisty, gdyż bezstanowe komponenty mogą być efektywniejsze. Dla komponentów stanowych w szczególnych sytuacjach kontener musi zapisać ich stan w pamięci trwałej, a następnie go odtworzyć, co jest czasochłonne. Ogólnie preferowane są komponenty bezstanowe, a stanowe powinny być używane gdy pamiętanie stanu jest niezbędne.
W szczególności, stanowy komponent sesyjny jest odpowiedni gdy: komponent reprezentuje interakcję z konkretnym klientem; komponent musi zachowywać stan między wywołaniami metod; komponent zarządza przepływem sterowania między innymi komponentami.
Bezstanowy komponent sesyjny jest odpowiedni gdy komponent realizuje ogólne zadanie np. konwersję danych, wysłanie potwierdzenia pocztą elektroniczną itp. i nie przechowuje danych dla konkretnego klienta.