dir.by  
Программирование, разработка, тестирование
Java
Java web приложение (сервлет, jsp страница, основная функциональность и без фрэймворков)
Создаем web сервлет (сервлет находится на веб-сервере, по запросу возвращает результат) | Java
  Посмотрели 1475 раз(а)    
 Создаем web сервлет (сервлет находится на веб-сервере, по запросу возвращает результат) | Java 
последнее обновление: 10 апреля 2025
Вот мой сервлет
  Файл MainServlet.java
@WebServlet("/hello")
public class MainServlet extends HttpServlet {

     @Override
     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
     {
          resp.setContentType("text/html");
          PrintWriter printWriter = resp.getWriter();
          printWriter.write("Good morning!");
          printWriter.close();
     }
}
Объяснение!
По пути /hello выполнится мой сервлет MainServlet.
Название MainServlet можно придумать любое название и это не влияет ни на что.
Важно это путь @WebServlet("/hello")
И важно что возвращает сервлет. Мой сервлет вернет значение "Good morning!" как "text/html"
 
Тоесть чтобы из обычного класса сделать сервлет, его нужно унаследовать от класса HttpServlet.
Над классом указываем аннотацию @WebServlet(), в которой привязываем сервлет к конкретному пути /hello.

Запускаем проект и открываем ссылку:
http://localhost:8080/MyServlet1/hello
Видм что наш сервлет по пути /hello работает т.е. дает ответ Good morning!
Скачать пример:
MyServlet1.zip ...
размер: 120 kb
 
На заметку! У вас должна быть установлена Java JDK. Если у вас ее нет то нужно скачать и установить Java JDK ...

На заметку! У вас должна быть установлена IntelliJ IDEA Ultimate. Если у вас ее нет то нужно скачать и установить IntelliJ IDEA Ultimate ...

На заметку! У вас должна быть установлен Tomcat Web Server. Если у вас это нет то нужно скачать и установить Tomcat Web Server ...
Шаг 1. Cоздаем новый проект
 
Выбираем прект: Maven Archtype
выбираем тип: webapp
 
Проект создался:
jsp файл это web страница.
Пробуем запустить проект:
Нажимаем на зеленый треугольник
Появилось окно Edit configuration c конфигурацией по умолчанию.
Внизу видим ошибку Error: Module is not selected
Шаг 2. Чтобы хорошо запустить этот web проект надо добавить web server (добавляем plugin Smart Tomcat это легкий web сервер)
Нажимаем на Edit Configurations
 
Нажимаем на +
нажимаем на Smart Tomcat
На заметку! Если в списке нет Smart Tomcat, то Нужно инсталировать Smart Tomcat plugin в Intellij Idea ...
 
Появилось окно с конфигурацией для Smart Tomcat
Я ничего не меняю, нажимаю на OK
Шаг 3. Запускаем проект
Нажимаем на зеленый треугольник
Приложение запускается и видим команду в Console:
C:\Users\echig\.jdks\openjdk-22.0.1\bin\java.exe "-Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 9.0"
-Dcatalina.base=C:\Users\echig\.SmartTomcat\MyServlet1\MyServlet1
-Djava.io.tmpdir=C:\Users\echig\.SmartTomcat\MyServlet1\MyServlet1\temp
-Djava.util.logging.config.file=C:\Users\echig\.SmartTomcat\MyServlet1\MyServlet1\conf\logging.properties
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2024.3\lib\idea_rt.jar=59545:C:\Program Files\JetBrains\IntelliJ IDEA 2024.3\bin"
-Dfile.encoding=UTF-8
-Dsun.stdout.encoding=UTF-8
-Dsun.stderr.encoding=UTF-8
-classpath "C:\Program Files\Apache Software Foundation\Tomcat 9.0\bin\bootstrap.jar;C:\Program Files\Apache Software Foundation\Tomcat 9.0\bin\tomcat-juli.jar"
org.apache.catalina.startup.Bootstrap start
Это значит что заускается web сервер Tomcat
Нажимаем на ссылку:
http://localhost:8080/MyServlet1

Видм что наша web страница запустилась на web сервере:
Внимание!
Если запускаем проект и ошибка:
Error running 'Unnamed'
java.io.FileNotFoundException:
C:\Users\echig\.SmartTomcat\MyServlet1\ MyServiet1conf\server.xml (The system cannot find the file specified)

Решение:
Нужно проект создать заново с начала.

 
Шаг 4. Добавим библиотеку javax.servlet-api в pom.xml файл
В файле pom.xml подключем библиотеки.
  Xml     Файл pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <groupId>com.example</groupId>
     <artifactId>MyServlet1</artifactId>
     <packaging>war</packaging>
     <version>1.0-SNAPSHOT</version>
     <name>MyServlet1 Maven Webapp</name>
     <url>http://maven.apache.org</url>
     <dependencies>
          <dependency>
               <groupId>junit</groupId>
               <artifactId>junit</artifactId>
               <version>3.8.1</version>
               <scope>test</scope>
          </dependency>
          <dependency>
               <groupId>javax.servlet</groupId>
               <artifactId>javax.servlet-api</artifactId>
               <version>4.0.1</version>
          </dependency>

     </dependencies>
     <build>
          <finalName>MyServlet1</finalName>
     </build>
</project>
Внимание!
После добавления <dependency> ... </dependency> в файл pom.xml эта библиотека не будет скачиваться с интернета.
Чтобы эта библиотека скачалась с интернета нужно закрыть проект и нажать открыть проект

 
Шаг 5. Создадим папку Java и сделаем servlet файл MainServlet.java
Создадим папку Java
 
Внутри папки Java создадим новый файл MainServlet.java:
  Java     Файл MainServlet.java
@WebServlet("/hello")
public class MainServlet extends HttpServlet {

     @Override
     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
     {
          resp.setContentType("text/html");
          PrintWriter printWriter = resp.getWriter();
          printWriter.write("Good morning!");
          printWriter.close();
     }
}
Объяснение!
По пути /hello выполнится мой сервлет MainServlet.
Название MainServlet можно придумать любое название и это не влияет ни на что.
Важно это путь @WebServlet("/hello")
И важно что возвращает сервлет. Мой сервлет вернет значение "Good morning!" как "text/html"
 
Шаг 6. Запускаем проект и увидим как работает сервлет
Нажимаем на ссылку:
http://localhost:8080/MyServlet1

добавим в конце /hello
вот так
http://localhost:8080/MyServlet1/hello
Видм что наш servlet работает на web сервере:
 
← Предыдущая тема
Создаем новое простое web приложение (jsp web страница) | Java, Maven
 
Следующая тема →
Установка Tomcat web server (скачиваем и устанавливаем для Windows)
 
Ваши Отзывы ... комментарии ...
   
Вашe имя
Ваш комментарий (www ссылки может добавлять только залогиненный пользователь)

Экскурсии по Москве Экскурсии по Москве: пешеходные, автобусные и речные прогулки на любой вкус
  Объявления  
  Объявления  
 
Скачать и установить
Установка JDK (скачиваем и устанавливаем библиотеку Java для Windows)
Скачать и установить IntelliJ IDEA для изучения Java, Spring, Jakarta EE | Функциональность и отличия: Community | Ultimate
Изучаем язык Java (class, interface, свойства и т.д.)
Создание простого консольного приложения в IntelliJ IDEA для изучения Java
Что такое interface в Java ?
Прямо в коде (во время выполнения) делаем имплементацию для interface | Java
Потоки в Java
lambda это безымянный метод (нет имени и не принадлежит классу) | Java
Исключения и обработка в Java. Пример: try {...} catch (Exception e) {...}
Зачем использовать throws Exception в названии функциии в Java ? Ответ: метод создает исключение и нет обработки try catch. Пример: float CalculateDensity(float mass, float volume) throws Exception { ... throw new Exception("Error! Volume is zero."); ... }
Java web приложение (сервлет, jsp страница, основная функциональность и без фрэймворков)
Создаем новое простое web приложение (jsp web страница) | Java, Maven
Создаем web сервлет (сервлет находится на веб-сервере, по запросу возвращает результат) | Java
Установка Tomcat web server (скачиваем и устанавливаем для Windows)
Проверяем, тестируем Tomcat web server (создаем новый my.hml файл)
Что такое Maven
Что такое динамическая web страница jsp (Java Server Page) ?
Как инсталировать Smart Tomcat plugin в Intellij Idea
Ошибка "The SDK is not specified for module ... | Project SDK is not defined ..." в IntelliJ IDEA | Java
Spring в Java (Spring Framework, Spring Data, Spring Boot, ...)
Что такое Spring? Зачем в Java использовать Spring?
Что такое Spring Bean? Что такое Spring Container? IoC (inversion of control) | Создание простого Spring проекта и конфигурациия Spring Container в XML файле | Редактор IntelliJ Idea и язык Java
Что такое Dependency Injection в Spring? Создание простого Spring проекта с Dependency Injection в конструкторе с атрибутами @Component, @Autowired | Редактор IntelliJ Idea и язык Java
Создаем новое Spring Web приложение (запрос идет в Controller → Controller создает ответ как текст или json) | Java, Spring Web, Spring Boot, Maven
Создаем новое Spring WebSocket приложение (Java WebSocket шлет сообщение к JavaScript WebSocket) | Java, Spring WebSocket, Spring Boot, Maven
Создаем Azure Web App с типом Java (бесплатно). То есть создаем пустой web server
Java Spring web приложение кладем в Azure
К приложению Azure Web App (Java) соединяемся через FTP | используем File Explorer
Ошибка "The SDK is not specified for module ... | Project SDK is not defined ..." в IntelliJ IDEA | Java, Spring Boot
Как инсталировать Spring WebSocket plugin в Intellij Idea
Jakarta EE / Java EE в Java (web приложения, web сервисы)
Что такое Jakarta EE (Java EE) ? | В каком редакторе (программе) удобно писать Jakarta EE (Java EE) код?
Создание простого web-проекта в IntelliJ Idea Ultimate | Jakarta EE (Java EE)
Struts на Java (расширяет API Java Servlet используя MVC)
Что такое Struts | Java
Собеседования на Java

  Ваши вопросы присылайте по почте: info@dir.by  
Яндекс.Метрика