Existuje 6 krokov na vytvorenie a príklad servletu . Tieto kroky sú potrebné pre všetky servery.
Príklad servletu je možné vytvoriť tromi spôsobmi:
- Implementáciou rozhrania Servlet,
- Zdedením triedy GenericServlet, (alebo)
- Zdedením triedy HttpServlet
Najčastejšie používaným prístupom je rozšírenie HttpServlet, pretože poskytuje špecifickú metódu http request, ako napríklad doGet(), doPost(), doHead() atď.
Tu, budeme používať server apache tomcat v tomto príklade. Kroky sú nasledovné:
- Vytvorte adresárovú štruktúru
- Vytvorte servlet
- Zostavte servlet
- Vytvorte deskriptor nasadenia
- Spustite server a nasaďte projekt
- Prístup k servletu
stiahnite si tento príklad servletu
stiahnite si príklad servletu rozšírením GenericServlet
stiahnite si príklad servletu implementáciou rozhrania Servlet
1) Vytvorte adresárové štruktúry
The adresárová štruktúra definuje, kam umiestniť rôzne typy súborov, aby webový kontajner mohol získať informácie a odpovedať klientovi.
Sun Microsystem definuje jedinečný štandard, ktorý musia dodržiavať všetci predajcovia serverov. Pozrime sa na adresárovú štruktúru, ktorá musí byť dodržaná pri vytváraní servletu.
Ako vidíte, súbor triedy servletu musí byť v priečinku class. Súbor web.xml musí byť v priečinku WEB-INF.
2) Vytvorte servlet
Existujú tri spôsoby, ako vytvoriť servlet.
|
V tomto príklade vytvoríme servlet, ktorý rozširuje triedu HttpServlet. V tomto príklade zdedíme triedu HttpServlet a poskytujeme implementáciu metódy doGet(). Všimnite si, že žiadosť o získanie je predvolená požiadavka. |
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) Zostavte servlet
Na kompiláciu servletu je potrebné načítať súbor jar. Rôzne servery poskytujú rôzne súbory jar:
Súbor Jar | Server |
---|---|
1) servlet-api.jar | Apache Tomcat |
2) weblogic.jar | Weblogic |
3) javaee.jar | Glassfish |
4) javaee.jar | JBoss |
Dva spôsoby načítania súboru jar
- nastaviť cestu triedy
- prilepte súbor jar do priečinka JRE/lib/ext
Vložte súbor java do ľubovoľného priečinka. Po skompilovaní súboru java prilepte súbor triedy servletu WEB-INF/triedy adresár.
4) Vytvorte deskriptor nasadenia (súbor web.xml)
The deskriptor nasadenia je xml súbor, z ktorého Web Container získava informácie o serveri, ktorý sa má vyvolať.
Webový kontajner používa analyzátor na získanie informácií zo súboru web.xml. Existuje veľa xml syntaktických analyzátorov, ako sú SAX, DOM a Pull.
V súbore web.xml je veľa prvkov. Tu sú uvedené niektoré potrebné prvky na spustenie jednoduchého programu servletov.
súbor web.xml
sonoojaiswal DemoServlet sonoojaiswal /welcome
Popis prvkov súboru web.xml
V súbore web.xml je príliš veľa prvkov. Tu je ilustrácia niektorých prvkov, ktoré sa používajú vo vyššie uvedenom súbore web.xml. Prvky sú nasledovné:
predstavuje celú aplikáciu. |
je podprvkom a predstavuje servlet. |
is sub element of predstavuje názov servletu. |
is sub element of predstavuje triedu servletu. |
je čiastkovým prvkom . Používa sa na mapovanie servletu. |
je čiastkovým prvkom . Tento vzor sa používa na strane klienta na vyvolanie servletu. |
5) Spustite server a nasaďte projekt
Ak chcete spustiť server Apache Tomcat, dvakrát kliknite na súbor startup.bat v adresári apache-tomcat/bin.
Jednorazová konfigurácia pre server Apache Tomcat
Musíte vykonať 2 úlohy:
- nastavte JAVA_HOME alebo JRE_HOME v premennej prostredia (je potrebné na spustenie servera).
- Zmeňte číslo portu kocúra (voliteľné). Vyžaduje sa, ak na rovnakom porte (8080) beží iný server.
1) Ako nastaviť JAVA_HOME v premennej prostredia?
Ak chcete spustiť server Apache Tomcat, v premenných prostredia musia byť nastavené JAVA_HOME a JRE_HOME.
Prejdite na vlastnosti Tento počítač -> Kliknite na kartu rozšírené a potom na premenné prostredia -> Kliknite na novú kartu používateľskej premennej -> Napíšte JAVA_HOME do názvu premennej a vložte cestu k priečinku jdk do hodnoty premennej -> ok -> ok -> ok .
ako čítať zo súboru csv v jave
Prejdite na vlastnosti tohto počítača:
Kliknite na kartu rozšírených nastavení systému a potom na premenné prostredia:
Kliknite na novú kartu používateľskej premennej alebo systémovej premennej:
Do názvu premennej napíšte JAVA_HOME a do hodnoty premennej vložte cestu priečinka jdk:
Na konci cesta nesmie byť bodkočiarka (;).
Po nastavení JAVA_HOME dvakrát kliknite na súbor startup.bat v apache tomcat/bin. |
Poznámka: K dispozícii sú dva typy kocúrikov:
|
Je to príklad kocúra apache, ktorý potrebuje iba extrahovať. |
Teraz je server úspešne spustený.
2) Ako zmeniť číslo portu Apache Tomcat
Zmena čísla portu je potrebná, ak na rovnakom systéme beží ďalší server s rovnakým číslom portu. Predpokladajme, že ste si nainštalovali Oracle, musíte zmeniť číslo portu apache tomcat, pretože oba majú predvolené číslo portu 8080.
typy binárnych stromov
OTVORENÉ súbor server.xml v poznámkovom bloku. Nachádza sa vo vnútri apache-tomcat/conf adresár . Zmeňte port konektora = 8080 a nahraďte 8080 ľubovoľným štvorciferným číslom namiesto 8080. Nahraďte ho 9999 a uložte tento súbor.
5) Ako nasadiť projekt servletu
Skopírujte projekt a vložte ho do priečinka webapps pod apache tomcat.
Existuje však niekoľko spôsobov, ako projekt nasadiť. Sú nasledovné:
- Skopírovaním priečinka context(project) do adresára webapps
- Skopírovaním priečinka war do adresára webapps
- Výberom cesty priečinka zo servera
- Výberom súboru war zo servera
Tu používame prvý prístup.
Môžete tiež vytvoriť vojnový súbor a vložiť ho do adresára webových aplikácií. Ak to chcete urobiť, musíte na vytvorenie súboru war použiť nástroj jar. Prejdite do adresára projektu (pred WEB-INF) a napíšte:
projectfolder> jar cvf myproject.war *
Vytvorenie vojnového súboru má tú výhodu, že presun projektu z jedného miesta na druhé trvá menej času.
6) Ako získať prístup k servletu
Otvorte broser a napíšte http://hostname:portno/contextroot/urlpatternofservlet. Napríklad:
http://localhost:9999/demo/welcome
stiahnite si tento príklad servletu (pomocou poznámkového bloku)
stiahnite si príklad servletu rozšírením GenericServlet
stiahnite si príklad servletu implementáciou rozhrania Servlet