Дадени са 6 стъпки за създаване на a пример за сервлет . Тези стъпки са необходими за всички сървъри.
Примерът за сървлет може да бъде създаден по три начина:
- Чрез внедряване на сервлет интерфейс,
- Чрез наследяване на клас GenericServlet, (или)
- Чрез наследяване на клас HttpServlet
Най-често използваният подход е чрез разширяване на HttpServlet, тъй като предоставя специфичен метод за http заявка, като doGet(), doPost(), doHead() и т.н.
Ето, ще използваме apache tomcat сървър в този пример. Стъпките са както следва:
- Създайте структура на директория
- Създайте сервлет
- Компилирайте сервлета
- Създайте дескриптор за разполагане
- Стартирайте сървъра и внедрите проекта
- Достъп до сервлета
изтеглете този пример на сървлет
изтеглете пример за сервлет чрез разширяване на GenericServlet
изтеглете пример за сървлет чрез внедряване на интерфейс на сервлет
1) Създайте структури от директории
The структура на директорията дефинира къде да се поставят различните типове файлове, така че уеб контейнерът да може да получи информацията и да отговори на клиента.
Sun Microsystem определя уникален стандарт, който да се следва от всички доставчици на сървъри. Нека да видим структурата на директорията, която трябва да се следва, за да създадете сървлета.
Както можете да видите, файлът на класа на сервлета трябва да бъде в папката класове. Файлът web.xml трябва да е в папката WEB-INF.
2) Създайте сервлет
Има три начина за създаване на сървлета.
|
В този пример ще създадем сървлет, който разширява класа HttpServlet. В този пример ние наследяваме класа HttpServlet и предоставяме имплементацията на метода doGet(). Обърнете внимание, че заявката за получаване е заявката по подразбиране. |
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) Компилирайте сървлета
За компилиране на сервлета е необходимо да се зареди jar файл. Различните сървъри предоставят различни jar файлове:
Jar файл | сървър |
---|---|
1) servlet-api.jar | Apache Tomcat |
2) weblogic.jar | Weblogic |
3) javaee.jar | Стъклена риба |
4) javaee.jar | JBoss |
Два начина за зареждане на jar файла
- задайте клас път
- поставете файла jar в папка JRE/lib/ext
Поставете java файла във всяка папка. След като компилирате java файла, поставете класовия файл на сървлета WEB-INF/класове указател.
4) Създайте дескриптора за разполагане (web.xml файл)
The дескриптор на разполагане е xml файл, от който Web Container получава информацията за сървъра, който ще бъде извикан.
Уеб контейнерът използва анализатора, за да получи информацията от файла web.xml. Има много анализатори на xml като SAX, DOM и Pull.
Във файла web.xml има много елементи. Тук са дадени някои необходими елементи за стартиране на проста сървлет програма.
файл web.xml
sonoojaiswal DemoServlet sonoojaiswal /welcome
Описание на елементите на файла web.xml
Във файла web.xml има твърде много елементи. Ето илюстрацията на някои елементи, които се използват в горния файл web.xml. Елементите са както следва:
представлява цялото приложение. |
е поделемент на и представлява сървлета. |
е под елемент на представлява името на сървлета. |
е под елемент на представлява класа на сървлета. |
е поделемент на . Използва се за картографиране на сървлета. |
е поделемент на . Този модел се използва от страна на клиента за извикване на сървлета. |
5) Стартирайте сървъра и внедрите проекта
За да стартирате сървъра Apache Tomcat, щракнете два пъти върху файла startup.bat в директорията apache-tomcat/bin.
Еднократна конфигурация за Apache Tomcat сървър
Трябва да изпълните 2 задачи:
- задайте JAVA_HOME или JRE_HOME в променливата на средата (необходимо е за стартиране на сървъра).
- Променете номера на порта на tomcat (по избор). Изисква се, ако друг сървър работи на същия порт (8080).
1) Как да задам JAVA_HOME в променливата на средата?
За да стартирате Apache Tomcat сървър, JAVA_HOME и JRE_HOME трябва да бъдат зададени в променливите на средата.
Отидете в свойствата на My Computer -> Щракнете върху раздела Разширени, след това върху променливите на средата -> Щракнете върху новия раздел на потребителската променлива -> Напишете JAVA_HOME в името на променливата и поставете пътя на папката jdk в стойността на променливата -> ok -> ok -> ok .
предимства и недостатъци на технологията
Отидете на свойствата на моя компютър:
Щракнете върху раздела за разширени системни настройки и след това върху променливите на средата:
Кликнете върху новия раздел на потребителска или системна променлива:
Напишете JAVA_HOME в името на променливата и поставете пътя на папката jdk в стойността на променливата:
В края на пътя не трябва да има точка и запетая (;).
След като зададете JAVA_HOME, щракнете двукратно върху файла startup.bat в apache tomcat/bin. |
Забележка: Има два налични типа tomcat:
|
Това е примерът на apache tomcat, който трябва само да извлича. |
Сега сървърът е стартиран успешно.
2) Как да промените номера на порта на apache tomcat
Промяната на номера на порта е необходима, ако има друг сървър, работещ на същата система със същия номер на порт. Да предположим, че сте инсталирали oracle, трябва да промените номера на порта на apache tomcat, защото и двата имат номер на порт по подразбиране 8080.
Отворете server.xml файл в бележника. Намира се вътре в apache-tomcat/конф директория. Променете порта на конектора = 8080 и заменете 8080 с произволно четирицифрено число вместо 8080. Нека го заменим с 9999 и запазим този файл.
5) Как да внедрите проекта за сервлет
Копирайте проекта и го поставете в папката webapps под apache tomcat.
Но има няколко начина за внедряване на проекта. Те са както следва:
- Чрез копиране на папката контекст (проект) в директорията webapps
- Чрез копиране на папката war в директорията webapps
- Като изберете пътя на папката от сървъра
- Като изберете военния файл от сървъра
Тук използваме първия подход.
Можете също да създадете военен файл и да го поставите в директорията webapps. За да направите това, трябва да използвате инструмента jar, за да създадете военния файл. Влезте в директорията на проекта (преди WEB-INF), след което напишете:
пълна форма на iskcon
projectfolder> jar cvf myproject.war *
Създаването на военен файл има предимството, че преместването на проекта от едно място на друго отнема по-малко време.
6) Как да получите достъп до сървлета
Отворете браузъра и напишете http://hostname:portno/contextroot/urlpatternofservlet. Например:
http://localhost:9999/demo/welcome
изтеглете този пример на сървлет (с помощта на бележник)
изтеглете пример за сервлет чрез разширяване на GenericServlet
изтеглете пример за сървлет чрез внедряване на интерфейс на сервлет