Введение
Apache Tomcat - это реализация с открытым исходным кодом сервлета Java, страниц JavaServer Pages (JSP), языка выражений Java и технологии Java WebSocket. Обычно мы называем Tomcat веб-контейнером или контейнером сервлетов.
Связь отображения между версиями tomcat и соответствующими спецификациями:
ссылка для скачивания
https://tomcat.apache.org/download-90.cgi
Загрузите на локальный компьютер и разархивируйте:
Войдите в основной каталог:
Введение в каталог Tomcat
мусорное ведро
Скрипты запуска, выключения и другие. Эти файлы .sh (для систем Unix) являются функциональными копиями этих файлов .bat (для систем Windows). Поскольку в командной строке Win32 отсутствуют некоторые функции, сюда включены некоторые другие файлы.
Например: startup.bat используется для запуска tomcat под Windows, а startup.sh используется в среде Linux. Соответственно есть соответствующий скрипт выключения.
conf
Файл конфигурации Tomcat и связанный с ним DTD. Самый важный файл здесь - server.xml. Это основной файл конфигурации контейнера.
catalina.policy
: Tomcat: файл политики безопасности, который управляет разрешениями, связанными с JVM. Подробнее см. В java.security.Permission.
catalina.properties
: Файл конфигурации управления поведением Tomcat Catalina, например Common ClassLoader.
logging.properties
: Файл конфигурации журнала Tomcat. Журнал внутри использует JDK Logging.
server.xml
: Файл конфигурации сервера Tomcat (для моих разработчиков очень важен).
context.xml
: Файл конфигурации глобального контекста, отслеживание и загрузка файлов ресурсов, автоматическая загрузка при изменении отслеживаемого файла.
tomcat-user.xml
: Файл конфигурации роли Tomcat.
web.xml
: Стандартный файл развертывания сервлета web.xml, Tomcat по умолчанию реализует частичную конфигурацию:
org.apache.catalina.servlets.DefaultServlet。
org.apache.jasper.servlet.JspServlet
журналы
По умолчанию здесь находится файл журнала.
localhost
Полезно, когда ваш tomcat не запускается, прочтите этот файл больше. такие как:
NoClassDefFoundError
ClassNotFoundException
access
Самый бесполезный.
catalina.{date}
В основном консольный вывод, в нем все логи.
веб-приложения
Здесь находится ваше веб-приложение. По сути, это все один проект.
Упростите способ веб-развертывания. Наши приложения не будут размещены здесь в онлайн-среде. Лучший способ - внешний.
lib
Tomcat хранит общие библиотеки. такие как:
ecj-4.17.jar: компилятор Java eclipse
jasper.jar: компилятор JSP.
Работа
Храните файлы, скомпилированные во время выполнения Tomcat, например файлы, скомпилированные JSP.
темп
Храните временные файлы, созданные во время выполнения.
Запустить кота
Запустить кота
Мы напрямую запускаем startup.bat в каталоге bin под окнами, что соответствует startup.sh в среде Linux.
Дважды щелкните, чтобы начать. Консоль введет порт 8080, а затем мы посетим:
http: // локальный: 8080 /
Отображение страницы:
Это означает, что наш кот успешно запустился.
В это время запрашивается ROOT-каталог.http://localhost:8080/
Например: мы можемhttp://localhost:8080/manager
Проект сервлета развернут на tomcat
Создать веб-проект
Используйте maven для создания веб-проекта.Поскольку tomcat является контейнером сервлетов, создайте класс сервлета в проекте, затем отметьте его как военный пакет и скопируйте его в tomcat для развертывания.
Структура проекта следующая:
Добавить зависимость
<проект 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.tian.maven </ groupId >
<artifactId> my-web-maven </artifactId>
<packaging> war </packaging>
<version> 1.0-SNAPSHOT </version>
<name> my-web-maven 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> 3.1.0 </version>
</dependency>
</dependencies>
<build>
<finalName> мой-веб-maven </finalName>
</build>
</project>
Создать DemoServlet
пакет com.tian.maven;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet (urlPatterns = "/ demo")
открытый класс DemoServlet расширяет HttpServlet {
@Override
protected void doGet (HttpServletRequest req, HttpServletResponse resp) выдает исключение ServletException, IOException {
message "msg = req.getParameter (message" message ");
String contextPath = req.getServletContext (). GetContextPath ();
System.out.println ("contextPath =" + contextPath);
соответственно getWriter (). println (сообщение);
}
}
web.xml не имеет ничего, только для упаковки.
<! Веб-приложение DOCTYPE PUBLIC
"- // Sun Microsystems, Inc. // Веб-приложение DTD 2.3 // EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name> Веб-приложение, созданное архетипом </display-name>
</web-app>
В index.jsp нет ничего, чтобы обнаружить, что:
<html>
<body>
<h2> Привет, мир! </h2>
</body>
</html>
Используйте команду mvn, чтобы создать военный пакет.
Скопируйте отмеченный военный пакет (на самом деле скопируйте папку my-web-maven такая же) в каталог webapps в tomcat:
Затем перейдите в каталог bin и дважды щелкните
После запуска проекта посетите http: // localhost: 8080 /
Докажите, что наш проект успешно запущен.
Затем мы обращаемся к сервлету, который мы написали:
http: // локальный: 8080 / демо? сообщение = привет
Ошибка, HTTP-статус 404-не найден;
Примечание : при посещении здесь нам нужно использовать имя проекта в качестве contextPath, то есть метод доступа должен быть:
http: // локальный: 8080 / мой-веб-maven / демо? сообщение = привет
Вывод на страницу
Здравствуйте
Это легко сделать, поэтому наш проект можно успешно развернуть на Tomcat.
Разверните проект в IDEA на tomcat
Создайте проект сервлета с именем проекта my-servlet.
Создайте новый класс MyServlet
Войдите в каталог tomcat, который мы только что установили, войдите в каталог lib и выберите servlet-api.jar.
Щелкните ОК.
Щелкните Применить, а затем щелкните ОК.
Измените содержимое MyServlet:
пакет com.tian.servlet;
import javax.servlet. *;
import java.io.IOException;
import java.io.PrintWriter;
// Чтобы реализовать интерфейс Servlet, следующие методы должны быть переписаны.
Открытый класс MyServlet реализует Servlet {
частный временный ServletConfig servletConfig;
@Override
public void init (ServletConfig servletConfig) выдает исключение ServletException {
this.servletConfig = servletConfig;
}
@Override
public ServletConfig getServletConfig () {
return servletConfig;
}
@Override
общедоступная служба void (запрос ServletRequest, ответ ServletResponse) выдает исключение ServletException, IOException {
String servletName = servletConfig.getServletName ();
// 响应 类型 , 浏览 器 将 其 渲染 为 HTML 格式
response.setContentType ("text / html");
PrintWriter writer = response.getWriter ();
writer.println ("<html> <head> </head>" + "<body> Здравствуйте, это" + servletName + "</body> </html>");
}
@Override
public String getServletInfo () {
return "мой первый сервлет";
}
@Override
public void destroy () {
}
}
Измените содержимое файла web.xml:
<? xml version = "1.0" encoding = "UTF-8"?> <веб-приложение xmlns = "http://xmlns.jcp.org/xml/ns/javaee" xmlns: xsi = "http: // www .w3.org / 2001 / XMLSchema-instance "xsi: schemaLocation =" http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1 .xsd "version =" 3.1 "> <servlet> <servlet-name> myServlet </servlet-name> <servlet-class> com.tian.servlet.MyServlet </servlet-class> </servlet> <servlet-mapping > <servlet-name> myServlet </servlet-name> <url-pattern> / demo </url-pattern> </servlet-mapping> </web-app>
Кроме того, мы изменяем содержимое index.jsp, в основном для лучшей демонстрации:
<% @ page contentType = "text / html; charset = UTF-8" language = "java"%> <html> <body> <h1> привет мир </h1> </body> </html>
IDEA интегрированный кот
Добавьте кота, который мы установили в нашей IDEA:
Зайдите в интерфейс конфигурации tomcat:
Настройте tomcat:
Войдите в каталог установки:
Нажмите ОК,
Затем введите столбец развертывания:
Добавьте созданный нами проект сервлета:
Наш проект добавляется автоматически:
Затем нажмите Применить, а затем нажмите ОК.
IDEA объединяет tomcat и связывает наши проекты. Запустим его ниже:
Запустить кота
Щелкните зеленый треугольник:
Докажите, что наш проект успешно запущен в tomcat.
Посетите наш сервлет
На этом этапе мы можем перейти к нашему сервлету.
Посетите: http: // localhost: 8080 / Отображение страницы - это содержимое index.jsp, которое мы изменили ранее.
Затем посетите наш собственный сервлет:
http: // localhost: 8080 / демонстрация
Мы успешно выводим наш контент. Ну вот и все в этой статье, простая запись о коте.
подводить итоги
Что такое tomcat, как установить tomcat, как запустить tomcat, как развернуть наш собственный проект сервлетов, как интегрировать tomcat в IDEA и как запустить tomcat.
「」人只要不失去方向,就不会失去自己