„Ето ме. Както беше поискано, сега ще ви кажа How да напишете първия си уеб сървър.“

"Уеб сървърът е като операционна система. Той не е ценен сам по себе си. Ценен е, защото можете да изпълнявате специални уеб програми (сървлети) на него. "

„Тези сървлети обработват заявките, които идват от потребителите.“

"Как обработват заявките? Как да стартирам програмата си в уеб сървър?"

„За да напишете свой собствен сървлет, вашият клас трябва да наследи класа HttpServlet. След това имплементирайте неговите doGet() и doPost() методи. Когато заявка идва от потребител, уеб сървърът създава един от вашите сервлет обекти и извиква своя doGet() Или извиква метода doPost(), в зависимост от типа заявка, идваща от браузъра."

„Но How програмата ми изобщо влиза в уеб сървъра?“

„Това е просто. Пишете програмата, компorрате я и я поставяте в специална папка в директорията, където сте инсталирали Tomcat.“

„Сервлетите са голяма и интересна, но отделна тема. Така че няма да ви обяснявам това днес. Ще ви разкажа малко за нещо друго.“

„JSP са много интересен вид сервлет, наречен. Те са нещо като PHP.“

„Нека напишем и стартираме възможно най-простата уеб програма, използвайки JSP.“

"Да го направим! Готов съм."

— Тогава да започваме.

Стъпка 1: Създайте нов уеб проект

Стартирайте просто уеб приложение - 1

"Свършен."

Стъпка 2: Задайте типа модул на Java модул. Задайте типа приложение на Web Application и посочете JDK.

Стартирайте просто уеб приложение - 2

"Свършен."

Стъпка 3: Дайте му име на проект

Стартирайте просто уеб приложение - 3

"Свършен."

„Трябва да видите нов празен проект.“

„Почти празен. Ще включва един файл, наречен index.jsp. Намерете го.“

Стъпка 4: Намерете JSP file

Стартирайте просто уеб приложение - 4

"Намерих го."

„Страхотно. Това е мястото, където можем да напишем codeа на нашия сервлет.“

„Но нека първо конфигурираме малко IntelliJ IDEA.“

„Можете да стартирате сървлети в Tomcat директно от IntelliJ IDEA. И да ги дебъгвате, ако е необходимо. По принцип това е супер удобно и страхотно. Ще го оцените, когато му дойде времето.“

— Вярвам ти. И Howво следва?

„Ще „обучим“ IntelliJ IDEA How да стартираме нашия уеб модул (нашето приложение) в Tomcat.“

Стъпка 5: Изберете „Редактиране на конфигурация“ в менюто

Стартирайте просто уеб приложение - 5

"Свършен."

Стъпка 6: Създайте нова конфигурация, като щракнете върху знака плюс

Стартирайте просто уеб приложение - 6

"Свършен."

Стъпка 7: Посочете Howво да стартирате (Tomcat сървър, локален)

Стартирайте просто уеб приложение - 7

„Посочете име за конфигурацията в полето Име, което е маркирано в червено.“

„Портът, на който Tomcat ще стартира сървлета, е посочен в зелено.“

„Също така трябва да кажем на IntelliJ IDEA къде се намира Tomcat. Щракнете върху бутона Конфигуриране…“

Стъпка 8: Създайте конфигурация за изпълнение

Стартирайте просто уеб приложение - 8

„Сега трябва да изберете папката, в която се намира Tomcat:“

Стъпка 9: Посочете местоположението на Tomcat

Стартирайте просто уеб приложение - 9 Стартирайте просто уеб приложение - 10 Стартирайте просто уеб приложение - 11

"Свършен."

„Трябва да получите нещо подобно:“

Стъпка 10: Получена конфигурация

Стартирайте просто уеб приложение - 12

„Сега трябва да свържем нашия проект с Tomcat.“

Има толкова много неща, които трябва да се направят. Добре е, че имам толкова подробни инструкции."

"Можеш да се обзаложиш! Опитвам се за моя приятел."

„Сега натиснете бутона Fix и IDEA ще направи всичко сама.“

Стъпка 11: IDEA свързва проекта и Tomcat

Стартирайте просто уеб приложение - 13

"Свършен."

"Страхотно. Още един коментар. Порт 8080 вероятно вече е зает. В крайна сметка Tomcat започна да работи веднага след инсталирането."

„IntelliJ IDEA може да добавя сървлети към работещ проект, но за простота, засега ще стартира нов Tomcat сървър всеки път.“

„Значи ще имаме няколко тичащи котки?“

„Да. И всеки се нуждае от собствен порт. Така че, нека променим порт 8080 на порт 8888 в настройките на проекта.“

"4 осмици. Харесва ми."

Стъпка 12: Променете порта на 8888

Стартирайте просто уеб приложение - 14

"Свършен."

"Страхотно. Приключихме с настройките."

— Е, Howво следва?

„Сега нека променим малко нашия файл index.jsp“

„Напишете нещо там, например „Сила за ракообразните!“

Стъпка 13: Променете index.jsp

Стартирайте просто уеб приложение - 15

„Не, предпочитам да напиша „Сила на роботите!“

„Страхотно. Остава още малко работа.“

Стъпка 14: Стартирайте сървлета и Tomcat

Стартирайте просто уеб приложение - 16

„Дневникът на Tomcat и проследяването на стека трябва да са видими. Регистърът не трябва да съдържа грешки.“

"Нещо като това:"

Стъпка 15 - Дневник на Tomcat

Стартирайте просто уеб приложение - 17

„В същото време IDEA трябва да отвори браузър с URL address към вашия сървлет.“

„Трябва да получите нещо подобно:“

Стъпка 16: Променете index.jsp

Стартирайте просто уеб приложение - 18

"Да. Това е, което получих. Страхотно!"

„И сега въведете следния URL address в браузъра:“

http://localhost:8888/index.jsp

"Нищо не се промени."

— Не казвай това.

Стъпка 17: Променете index.jsp

Стартирайте просто уеб приложение - 19

„Сега браузърът показва file index.jsp, който видяхте в IntelliJ IDEA.“

— Този, който смених?

— Да.

„Но ако в заявката на браузъра е посочен само домейнът, а не останалата част от заявката, тогава ще бъде извикан манипулаторът по подразбиране. В нашия случай това е index.jsp.“

„Да предположим, че имате три file: index.jsp , apple.jsp , google.jsp . Ето How ще работят нещата:“

Заявка Отговор
http://localhost:8888 index.jsp
http://localhost:8888/ index.jsp
http://localhost:8888/index.jsp index.jsp
http://localhost:8888/apple.jsp apple.jsp
http://localhost:8888/ samsung.jsp Съобщение за грешка: Сървлетът не е намерен
http://localhost:8888/google.jsp google.jsp
http://localhost:8888/ индекс Съобщение за грешка: Сървлетът не е намерен

"Аз разбирам, че."

„Билаабо, ти казваш, че JSP са страхотни толкова дълго. Но те са много подобни на обикновените HTML страници. Всичко е абсолютно същото.“

„Е, не всичко. Опитайте да добавите следния текст към JSP:“

JSP code
<%@ page contentType="text/html; charset=UTF-8" language="java" %>
<html>
<head>
<title>Amigo says hi</title>
</head>
<body>
<%--This is still HTML--%>
<%
// But I can write Java code here

String s = "Power to robots!";
for(int i=0; i<10; i++)
{
 out.println(s);
 out.println("<br>");
}

%>
<%--and this is HTML again--%>
</body>
</html>

„Можете да вградите Java code в JSP page и тя ще се изпълнява!

„Java codeът в JSP page се нарича скриптлет и е ограден в тагове <% и %>“

"Уау!"

„ОК. Ще отида да напиша няколко мои JSP страници.“

— Много ти благодаря, Билаабо.

— И на теб благодаря, приятелю!