Czytałem wiele artykułów, aby zrozumieć serwlet Java, ale mi się nie udało.
Czy możesz krótko przedstawić serwlety Java (w prostym języku). Jak to jest serwlet? Jakie są zalety? I to wszystko.
Nie rozumiem różnicy między językami programowania po stronie serwera (PHP, ASP) a serwletami.
java
jakarta-ee
servlets
hardik
źródło
źródło
servlets
tag poniżej pytania, aż pojawi się czarna skrzynka. Kliknij tam link informacyjny .Odpowiedzi:
Serwlet jest po prostu klasą, która odpowiada na określony rodzaj żądania sieciowego - najczęściej żądania HTTP. Zasadniczo serwlety są zwykle używane do implementacji aplikacji internetowych - ale istnieją również różne frameworki, które działają nad serwletami (np. Struts), aby zapewnić abstrakcję wyższego poziomu niż „tutaj jest żądanie HTTP, napisz do tego poziomu odpowiedzi HTTP”, które serwlety zapewniać.
Serwlety działają w kontenerze serwletów, który obsługuje stronę sieciową (np. Analizowanie żądania HTTP, obsługa połączeń itp.). Jednym z najbardziej znanych kontenerów serwletów typu open source jest Tomcat .
źródło
Serwlet w swej istocie jest klasą Java; który może obsłużyć żądania HTTP. Zazwyczaj wewnętrzną precyzję odczytu żądania HTTP i odpowiedzi za pośrednictwem drutu zajmują pojemniki takie jak Tomcat. Odbywa się to tak, że jako programista po stronie serwera możesz skupić się na tym, co zrobić z żądaniem i odpowiedziami HTTP, i nie zawracać sobie głowy kodem zajmującym się obsługą sieci itp. Kontener zajmie się pakowaniem całej zawartości Obiekt odpowiedzi HTTP i wyślij go do klienta (powiedzmy w przeglądarce).
Teraz następnym logicznym pytaniem jest to, kto decyduje, co powinien zrobić kontener? Odpowiedź brzmi; W świecie Java przynajmniej jest prowadzony (uwaga: nie użyłem słowa kontrolowanego) według specyfikacji. Na przykład specyfikacje serwletu (patrz zasób 2) określają, co musi być w stanie wykonać serwlet. Więc jeśli możesz napisać implementację specyfikacji, gratulacje, właśnie stworzyłeś kontener (technicznie kontenery takie jak Tomcat również implementują inne specyfikacje i robią skomplikowane rzeczy, takie jak niestandardowe moduły ładujące itp., Ale masz pomysł).
Zakładając, że masz kontener, twoje serwlety są teraz klasami Java, których cykl życia będzie utrzymywany przez kontener, ale ich reakcja na przychodzące żądania HTTP zostanie podjęta przez ciebie. Robisz to, pisząc, co chcesz zrobić we wcześniej zdefiniowanych metodach, takich jak init (), doGet (), doPost () itp. Spójrz na Zasób 3.
Oto zabawne ćwiczenie dla Ciebie. Utwórz prosty serwlet jak w Resource 3 i napisz kilka instrukcji System.out.println () w jego metodzie konstruktora (Tak, możesz mieć konstruktor serwletu), metody init (), doGet (), doPost () i uruchom serwlet w tomcat. Zobacz dzienniki konsoli i dzienniki tomcat.
Mam nadzieję, że to pomoże, szczęśliwej nauki.
Zasoby
Zobacz, jak wygląda HTTP aplet tutaj (przykład Tomcat).
Specyfikacja serwletu .
Prosty przykład serwletu .
Zacznij czytać książkę online / PDF Zapewnia również pobranie całej książki. Może to pomoże. jeśli dopiero zaczynasz serwlety, dobrym pomysłem jest przeczytanie materiału wraz z API serwletów. jest to wolniejszy proces uczenia się, ale jest o wiele bardziej pomocny w zrozumieniu podstaw.
źródło
Oprócz powyższego i tylko po to, aby zaznaczyć oczywiste krwawienie ...
Dla wielu osób jest to bardzo oczywiste, ale dla kogoś, kto przywykł do pisania aplikacji, które po prostu uruchamiają się, a potem kończą: serwlet spędza większość czasu bezczynnie ... czekając na coś, prośbę, a następnie odpowiadając na to. . Z tego powodu serwlet ma całe życie: jest inicjowany, a następnie czeka, odpowiadając na wszystko, co zostanie na niego rzucone, a następnie zostanie zniszczony. Co oznacza, że musi zostać utworzony (a później zniszczony) przez coś innego (środowisko), że działa we własnym wątku lub procesie i że nie robi nic, chyba że zostanie o to poproszony. A także, że w taki czy inny sposób należy wdrożyć mechanizm, dzięki któremu ten „podmiot” może „nasłuchiwać” żądań.
Sugeruję, że czytanie o wątkach, procesach i gniazdach rzuci na to trochę światła: jest to zupełnie inne niż funkcjonowanie podstawowej aplikacji „witaj świecie”.
Można argumentować, że termin „serwer” lub „serwlet” to trochę przesada. Bardziej racjonalną i prostszą nazwą może być „odpowiadający”. Powód wyboru terminu „serwer” jest historyczny: pierwsze takie ustalenia to „serwery plików”, w których wielu terminali użytkowników / klientów pyta o konkretny plik z komputera centralnego, a następnie ten plik zostanie „podany” „jak książka lub talerz ryb z frytkami.
źródło
Co to jest serwlet?
Serwlety działają w kontenerze serwletów, który obsługuje stronę sieciową (np. Analizowanie żądania HTTP, obsługa połączeń itp.). Jednym z najbardziej znanych kontenerów serwletów typu open source jest Tomcat.
W paradygmacie żądanie / odpowiedź serwer WWW może obsługiwać tylko strony statyczne dla klienta
Przepływ żądania
Skąd kontener wie, o który klient Servleta prosił?
W tym pliku masz informacje na temat serwletu
Każdy serwlet w aplikacji internetowej powinien mieć wpis do tego pliku
Jak „zainstalować” serwlety? * Cóż, obiekty serwletu są dziedziczone z biblioteki javax.servlet. *. Tomcat i Spring można wykorzystać do wykorzystania tych obiektów w celu dopasowania do przypadku użycia.
Ref- Obejrzyj to na 1.5x- https://www.youtube.com/watch?v=tkFRGdUgCsE . To niesamowite wytłumaczenie.
źródło
Servlet to technologia po stronie serwera, która służy do tworzenia dynamicznej strony internetowej w aplikacji internetowej. W rzeczywistości serwlet to interfejs API składający się z grupy klas i interfejsów, który ma pewną funkcjonalność. Korzystając z interfejsu API serwletów, możemy korzystać ze wstępnie zdefiniowanych funkcji klas serwletów i interfejsów.
Cykl życia serwletu:
Kontener WWW utrzymuje cykl życia instancji serwletu.
1. Załadowano klasę serwletu
2) Utworzono instancję serwletu
3) Wywoływana jest metoda init ()
4 Wywołano metodę service ()
5 Wywołano metodę destroy ()
Gdy żądanie podniesione przez klienta (przeglądarkę), kontener WWW sprawdza, czy serwlet jest uruchomiony, czy nie, jeśli tak, to wywołuje metodę service () i udziela odpowiedzi przeglądarce.
Gdy serwlet nie jest uruchomiony, to kontener WWW wykonaj następujące kroki ..
1. moduł ładujący ładuje klasę serwletu
2. Tworzy serwlet
3. Inicjuje serwlet
4. wywołaj metodę service ()
po doręczeniu żądania web-kontener poczekaj na określony czas, w tym czasie, jeśli żądanie przychodzi, wówczas wywołuje tylko metodę service (), w przeciwnym razie wywołuje metodę destroy ().
źródło
Jeśli jesteś początkujący, myślę, że ten samouczek może dać podstawowe pojęcie o tym, czym jest Servlet ...
Niektóre cenne punkty znajdują się poniżej z podanego linku.
Technologia serwletów służy do tworzenia aplikacji internetowych, które znajdują się po stronie serwera i generują dynamiczną stronę internetową.
Serwlet można opisać na wiele sposobów, w zależności od kontekstu.
źródło
Serwlety Java to moduły programowe Java po stronie serwera, które przetwarzają i odpowiadają na wymagania klientów oraz aktualizują interfejs serwletu. Pomaga w poprawie użyteczności serwera WWW przy nieznacznym obciążeniu, utrzymaniu i wsparciu.
Serwlet działa jako pośrednik między klientem a serwerem. Ponieważ moduły serwletów działają na serwerze, mogą otrzymywać i reagować na żądania zgłaszane przez klienta. Obiekty zapotrzebowania i reakcji serwletu stanowią pomocną metodę radzenia sobie z zapytaniami HTTP i wysyłania informacji o treści do klienta.
Ponieważ serwlet jest skoordynowany z dialektem Java, dodatkowo ma wszystkie najważniejsze elementy Java, na przykład wysoką mobilność, autonomię sceny, bezpieczeństwo i dostępność bazy danych Java.
źródło
Servlet to klasa java, która odpowiada na żądanie HTTP i generuje odpowiedź HTTP ...... gdy tworzymy stronę za pomocą HTML, byłaby to strona statyczna, więc aby była dynamiczna, używamy SERWERA {w prostych słowach można zrozumieć} Aby skorzystać z serwletu, JSP przeważa nad nim, używa zarówno kodu, jak i znacznika HTML.
źródło
Serwlety to klasy Java, które uruchamiają określone funkcje, gdy użytkownik serwisu zażąda adresu URL z serwera. Funkcje te mogą wykonywać zadania, takie jak zapisywanie danych w bazie danych, wykonywanie logiki i zwracanie informacji (takich jak dane JSON) potrzebnych do załadowania strony.
Większość programów Java używa
main()
metody, która wykonuje kod podczas działania programu. Aplety Java zawieraćdoGet()
idoPost()
metody, które działają podobnie jakmain()
metody. Funkcje te są wykonywane, gdy użytkownik zgłasza żądanieGET
lubPOST
adres URL adresowany do tego serwletu. Dzięki temu użytkownik może załadować stronęGET
żądania lub przechowywać dane zPOST
żądania.Gdy użytkownik wysyła żądanie
GET
lubPOST
, serwer odczytuje@WebServlet
na górze każdej klasy serwletu w katalogu, aby zdecydować, która klasa serwletu ma zostać wywołana. Załóżmy na przykład, że masz klasę ChatBox, a na górze jest to:Gdy użytkownik zażąda
/chat
adresu URL,ChatBox
klasa zostanie wykonana.źródło
Jak opisano w tym artykule , serwlet jest znormalizowanym sposobem rozszerzenia serwera Java i uzyskania dostępu do jego możliwości.
Każdy serwlet może być postrzegany jako mały serwer (stąd nazwa), który uzyskuje dostęp do żądania i odpowiedzi wzorowanych na kodzie Java, a także innych danych kontekstowych, takich jak sesja.
Mając to pod ręką, kod Java serwletu może łączyć się z wszystkim, co jest potrzebne do renderowania odpowiedzi, w tym przekazywanie strony JSP w celu wygenerowania widoku HTML.
źródło
Wydaje mi się, że serwlet jest w zasadzie klasą java, która działa jako pośredni środek między żądaniem HTTP a odpowiedzią HTTP. Servlet służy również do dynamicznej zmiany strony. Załóżmy na przykład, że jeśli chcesz przekierować na inną stronę internetową na serwerze, musisz użyć serwletów. Inną ważną rzeczą jest to, że serwlet może działać zarówno na hoście lokalnym, jak i przeglądarce internetowej.
źródło
Właśnie dostałeś odpowiedź na normalnie serwlet. Chciałbym jednak podzielić się z wami informacjami o Servlet 3.0
Znalazłem go z Java Servlet Tutorial
źródło