[ Pobierz całość w formacie PDF ]
.Żšdania HEAD sš bardzo przydatne wprzypadku tworzenia programów korzystajšcych z protokołu HTTP.Na przykład,narzędzia sprawdzajšce poprawnoœć hiperpołšczeń umieszczonych na stronach WWW,aby zredukować obcišżenie serwera, bardzo często posługujš się właœnieżšdaniami HEAD a nie GET.Uzyskuje się automatycznš obsługę żšdań OPTIONS.Jeœli metoda doGet zostałazaimplementowana, to standardowa metoda service odpowiada na żšdania OPTIONSzwracajšc nagłówek Allow informujšcy, że obsługiwane sš żšdania GET, HEAD,OPTIONS oraz TRACE.Uzyskuje się automatycznš obsługę żšdań TRACE.Żšdania TRACE stosowane sšpodczas testowania programów korzystajšcych z protokołu HTTP — w odpowiedzi nanie serwer zwraca wyłšcznie nagłówki HTTP.PodpowiedŸJeœli tworzony serwlet ma w identyczny sposób obsługiwać zarówno żšdania GETjak i POST, to wywołuj metodę doPost z metody doGet, lub na odwrót.Nie stosujnatomiast rozwišzania polegajšcego na bezpoœrednim przesłonięciu metodyservice.Metody doGet, doPost oraz doXxxTe metody zawierajš najistotniejsze czynnoœci wykonywane przez serwlet.W 99procentach przypadków będš Cię interesowały wyłšcznie żšdania GET lub POST, azatem będziesz implementował metody doPost lub doGet.Jeœli jednak będzieszchciał, to nic nie stoi na przeszkodzie, aby zaimplementować także metodędoDelete służšcš do obsługi żšdań DELETE, doPut obsługujšcš żšdania PUT,doTrace obsługujšcš żšdania TRACE oraz doOptions służšcš do obsługi żšdańOPTIONS.Pamiętaj jednak, że możesz skorzystać z automatycznej obsługi żšdańOPTIONS oraz TRACE, jakš dysponuje metoda service, opisana w poprzednimpodrozdziale.Zwróć uwagę, iż nie ma metody doHead, gdyż system automatyczniewykorzystuje wiersz statusu oraz nagłówki generowane przez metodę doGet, takżedo obsługi żšdań HEAD.Interfejs SingleThreadModelStandardowo system tworzy jednš kopię serwletu, a następnie używa nowych wštkówdo obsługi nadsyłanych żšdań; przy czym, w przypadku gdy nowe żšdanie nadejdziezanim wykonywanie poprzedniego żšdania zostanie zakończone, uruchamiane sškolejne wštki wykonywane jednoczeœnie.Oznacza to, że metody doGet oraz doPostmuszš bardzo uważnie synchronizować dostęp do pól oraz innych, wspólnychinformacji.Jest to konieczne, gdyż wiele wštków może jednoczeœnie próbowaćkorzystać z tych danych.Więcej informacji na ten temat znajdziesz wpodrozdziale 7.3, pt.: „Trwałe przechowywanie stanu serwletu i automatyczneodœwieżanie stron”.Jeœli nie chcesz, aby serwlet działał w ten standardowy —„wielowštkowy” sposób, wystarczy zaimplementować w nim interfejsSingleThreadModel:public class MojServlet extends HttpServletimplements SingleThreadModel {//.kod servletu.//}Jeœli zaimplementujesz ten interfejs, system zagwarantuje, że w dowolnej chwiliz pojedynczej kopii serwletu będzie korzystał co najwyżej jeden wštekobsługujšcy żšdania.W tym celu serwer bšdŸ to umieszcza wszystkie żšdania wkolejce i po kolei przekazuje je do pojedynczej kopii serwletu, bšdŸ też tworzypulę kopii serwletów, z których każda w danej chwili będzie obsługiwać tylkojedno żšdanie.Oznacza to, że nie musisz się przejmować równoczesnym dostępemdo zwyczajnych pól (zmiennych instancyjnych) serwletu.Niemniej jednak wcišżkonieczna jest synchronizacja dostępu do zmiennych klasowych (pól oznaczonychjako static) oraz danych przechowywanych poza serwletem.Synchroniczny dostęp do serwletów może w znaczšcym stopniu ograniczyćefektywnoœć działania serwera (czyli czas oczekiwania na wyniki) w przypadkachgdy serwlet wykorzystywany jest bardzo często.A zatem, musisz dobrzeprzemyœleć czy należy korzystać z interfejsu SingleThreadModel.Metoda destroySerwer może podjšć decyzję o usunięciu z pamięci załadowanej do niej kopiiserwletu.Decyzja taka może zostać podjęta w wyniku jawnego żšdaniaadministratora lub ze względu na fakt, iż serwlet nie był wykorzystywany przezdługi okres czasu.Niemniej jednak, nim serwlet zostanie usunięty z pamięci,serwer wywoła jego metodę destroy.Metoda ta, daje serwletowi możliwoœćzamknięcia połšczeń z bazami danych, zatrzymania wštków wykonywanych w tle,zapisania listy cookies lub wartoœci licznika odwiedzin w pliku na dysku, lubwykonania jakiekolwiek innych czynnoœci porzšdkowych [ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • orla.opx.pl