Istnieje 6 kroków, aby utworzyć plik przykład serwletu . Te kroki są wymagane w przypadku wszystkich serwerów.
Przykładowy serwlet można utworzyć na trzy sposoby:
- Implementując interfejs serwletu,
- Dziedzicząc klasę GenericServlet, (lub)
- Dziedzicząc klasę HttpServlet
Najczęściej stosowanym podejściem jest rozszerzenie HttpServlet, ponieważ zapewnia on metodę specyficzną dla żądania http, taką jak doGet(), doPost(), doHead() itp.
Tutaj będziemy używać serwer Apache Tomcat w tym przykładzie. Kroki są następujące:
- Utwórz strukturę katalogów
- Utwórz serwlet
- Skompiluj serwlet
- Utwórz deskryptor wdrożenia
- Uruchom serwer i wdróż projekt
- Uzyskaj dostęp do serwletu
pobierz ten przykładowy serwlet
pobierz przykład serwletu, rozszerzając GenericServlet
pobierz przykład serwletu poprzez implementację interfejsu serwletu
1) Utwórz struktury katalogów
The struktura katalogów określa, gdzie umieścić różne typy plików, aby kontener sieciowy mógł uzyskać informacje i odpowiedzieć klientowi.
Sun Microsystem definiuje unikalny standard, którego powinni przestrzegać wszyscy dostawcy serwerów. Przyjrzyjmy się strukturze katalogów, której należy przestrzegać, aby utworzyć serwlet.
Jak widać, plik klasy serwletu musi znajdować się w folderze klas. Plik web.xml musi znajdować się w folderze WEB-INF.
2) Utwórz serwlet
Istnieją trzy sposoby tworzenia serwletu.
|
W tym przykładzie utworzymy serwlet będący rozszerzeniem klasy HttpServlet. W tym przykładzie dziedziczymy klasę HttpServlet i zapewniamy implementację metody doGet(). Zauważ, że żądanie get jest żądaniem domyślnym. |
DemoServlet.java
import javax.servlet.http.*; import javax.servlet.*; import java.io.*; public class DemoServlet extends HttpServlet{ public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException,IOException { res.setContentType('text/html');//setting the content type PrintWriter pw=res.getWriter();//get the stream to write the data //writing html in the stream pw.println(''); pw.println('Welcome to servlet'); pw.println(''); pw.close();//closing the stream }}
3) Skompiluj serwlet
Aby skompilować serwlet, wymagane jest załadowanie pliku jar. Różne serwery udostępniają różne pliki jar:
plik Jar | serwer |
---|---|
1) serwlet-api.jar | Apache Tomcat |
2) weblogic.jar | Logika internetowa |
3) javaee.jar | Szklana ryba |
4) javaee.jar | JBoss |
Dwa sposoby ładowania pliku jar
- ustaw ścieżkę klas
- wklej plik jar w folderze JRE/lib/ext
Umieść plik Java w dowolnym folderze. Po skompilowaniu pliku Java wklej plik klasy serwletu WEB-INF/klasy informator.
4) Utwórz deskryptor wdrożenia (plik web.xml)
The deskryptor wdrożenia to plik XML, z którego Web Container pobiera informacje o serwecie, który ma zostać wywołany.
Kontener sieciowy korzysta z analizatora składni w celu pobrania informacji z pliku web.xml. Istnieje wiele parserów XML, takich jak SAX, DOM i Pull.
Plik web.xml zawiera wiele elementów. Poniżej podano kilka niezbędnych elementów do uruchomienia prostego programu serwletu.
plik web.xml
sonoojaiswal DemoServlet sonoojaiswal /welcome
Opis elementów pliku web.xml
W pliku web.xml znajduje się zbyt wiele elementów. Oto ilustracja niektórych elementów użytych w powyższym pliku web.xml. Elementy są następujące:
reprezentuje całą aplikację. |
jest podelementem i reprezentuje serwlet. |
is podelement reprezentuje nazwę serwletu. |
jest podelementem reprezentującym klasę serwletu. |
jest podelementem . Służy do mapowania serwletu. |
jest podelementem . Ten wzorzec jest używany po stronie klienta do wywołania serwletu. |
5) Uruchom serwer i wdróż projekt
Aby uruchomić serwer Apache Tomcat, kliknij dwukrotnie plik startup.bat w katalogu Apache-Tomcat/bin.
Jednorazowa konfiguracja serwera Apache Tomcat
Musisz wykonać 2 zadania:
- ustaw Java_HOME lub JRE_HOME w zmiennej środowiskowej (jest to wymagane do uruchomienia serwera).
- Zmień numer portu Tomcat (opcjonalnie). Jest to wymagane, jeśli inny serwer działa na tym samym porcie (8080).
1) Jak ustawić Java_HOME w zmiennej środowiskowej?
Aby uruchomić serwer Apache Tomcat, w zmiennych środowiskowych należy ustawić Java_HOME i JRE_HOME.
Przejdź do właściwości Mój komputer -> Kliknij kartę Zaawansowane, a następnie zmienne środowiskowe -> Kliknij nową kartę zmiennej użytkownika -> Wpisz Java_HOME w nazwie zmiennej i wklej ścieżkę folderu jdk w wartości zmiennej -> ok -> ok -> ok .
przykład listy w Javie
Przejdź do właściwości Mój komputer:
Kliknij kartę zaawansowanych ustawień systemu, a następnie zmienne środowiskowe:
Kliknij nową zakładkę zmiennej użytkownika lub zmiennej systemowej:
Wpisz JAVA_HOME w nazwie zmiennej i wklej ścieżkę folderu jdk w wartości zmiennej:
Na końcu ścieżki nie może znajdować się średnik (;).
Po ustawieniu Java_HOME kliknij dwukrotnie plik startup.bat w Apache Tomcat/bin. |
Uwaga: dostępne są dwa typy kocurów:
|
To jest przykład Apache Tomcat, który wymaga jedynie wyodrębnienia. |
Teraz serwer został pomyślnie uruchomiony.
2) Jak zmienić numer portu Apache Tomcat
Zmiana numeru portu jest wymagana, jeśli w tym samym systemie działa inny serwer z tym samym numerem portu. Załóżmy, że zainstalowałeś Oracle i musisz zmienić numer portu Apache Tomcat, ponieważ oba mają domyślny numer portu 8080.
nazwa produktów do makijażu
otwarty plik serwer.xml w notatniku. Znajduje się wewnątrz Apache-Tomcat/conf katalog . Zmień port złącza = 8080 i zamień 8080 na dowolną czterocyfrową liczbę zamiast 8080. Zastąpmy ją liczbą 9999 i zapiszmy ten plik.
5) Jak wdrożyć projekt serwletu
Skopiuj projekt i wklej go w folderze webapps w obszarze Apache Tomcat.
Istnieje jednak kilka sposobów wdrożenia projektu. Są one następujące:
- Kopiując folder kontekstu (projektu) do katalogu webapps
- Kopiując folder war do katalogu webapps
- Wybierając ścieżkę folderu z serwera
- Wybierając plik wojny z serwera
Tutaj używamy pierwszego podejścia.
Możesz także utworzyć plik wojenny i wkleić go do katalogu webapps. Aby to zrobić, musisz użyć narzędzia jar, aby utworzyć plik wojny. Wejdź do katalogu projektu (przed WEB-INF), a następnie napisz:
projectfolder> jar cvf myproject.war *
Tworzenie pliku wojennego ma tę zaletę, że przenoszenie projektu z jednej lokalizacji do drugiej zajmuje mniej czasu.
6) Jak uzyskać dostęp do serwletu
Otwórz przeglądarkę i wpisz http://hostname:portno/contextroot/urlpatternofservlet. Na przykład:
http://localhost:9999/demo/welcome
pobierz ten przykład serwletu (za pomocą notatnika)
pobierz przykład serwletu, rozszerzając GenericServlet
pobierz przykład serwletu poprzez implementację interfejsu serwletu