Tomcat入门知识点有哪些

57次阅读
没有评论

共计 5717 个字符,预计需要花费 15 分钟才能阅读完成。

本篇内容介绍了“Tomcat 入门知识点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让丸趣 TV 小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

背景介绍

Apache Tomcat 是 Java Servlet、JavaServer Pages  (JSP)、Java 表达式语言和 Java 的 WebSocket 技术的一个开源实现 , 通常我们将 Tomcat 称为 Web 容器或者 Servlet 容器。

tomcat 各版本和相应规范的映射关系:

下载地址

https://tomcat.apache.org/download-90.cgi 下载到本地并解压:

进入主目录:

tomcat 目录介绍

bin

启动,关闭和其他脚本。这些  .sh 文件 (对于 Unix 系统) 是这些.bat 文件的功能副本(对于 Windows 系统)。由于 Win32 命令行缺少某些功能,因此此处包含一些其他文件。

比如说:windows 下启动 tomcat 用的是 startup.bat,另外 Linux 环境中使用的是 startup.sh。对应还有相应的 shutdown 关闭脚本。

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 server 配置文件(对于我开发人员来说是非常重要)。

context.xml:全局 context 配置文件,监视并加载资源文件,当监视的文件发生发生变化时,自动加载。

tomcat-user.xml:tomcat 角色配置文件。

web.xml:Servlet 标准的 web.xml 部署文件,tomcat 默认实现部分配置 入内:

org.apache.catalina.servlets.DefaultServlet。

org.apache.jasper.servlet.JspServlet

logs

日志文件默认位于此处。

localhost 有用,当你们的 tomcat 启动不了的时候,多看这个文件。比如:

NoClassDefFoundError

ClassNotFoundException

access 最没用。

catalina.{date} 主要是控制台输出,全部日志都在这里面。

webapps

这是您的 webapp 所在的位置。其实这里面这几个都是一个项目。

简化 web 部署的方式。在线上环境中我们的应用是不会放在这里的。最好的办法就是外置。

libtomcat 存放共用的类库。比如:

ecj-4.17.jar: eclipse Java 编译器

jasper.jar:JSP 编译器。

work

存放 tomcat 运行时编译后的文件,比如 JSP 编译后的文件。

temp

存放运行时产生的临时文件。

启动 tomcat

启动 tomcat

我们在 windows 下的就直接启动 bin 目录下的 startup.bat,对应 Linux 环境中我们使用的是 startup.sh。

双击就能启动了。控制台会输 8080 端口,然后我们访问:

http://localhost:8080/ 页面展示:

这就代表着我们的 tomcat 启动成功了。

此时,http://localhost:8080/ 请求到的是 ROOT 目录。

比如:我们还可以 http://localhost:8080/manager

Servlet 项目部署到 tomcat 中

创建 web 项目

使用 maven 创建 web 项目,既然说 tomcat 是 Servlet 容器,那么在项目中创建一个 Servlet 类,然后打成 war 包,拷贝到 tomcat 中部署。

项目结构如下:

添加依赖

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.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 my-web-maven /finalName   /build   /project

创建 DemoServlet

package 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) public class DemoServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String msg = req.getParameter( message  String contextPath = req.getServletContext().getContextPath(); System.out.println( contextPath=  + contextPath); resp.getWriter().println(msg); } }

web.xml 什么都没有,仅仅就是为了打包。

Archetype Created Web Application

!DOCTYPE web-app PUBLIC  -//Sun Microsystems, Inc.//DTD Web Application 2.3//EN   http://java.sun.com/dtd/web-app_2_3.dtd     web-app   display-name Archetype Created Web Application /display-name   /web-app

index.jsp 找那个也没什么内容:

html   body   h3 Hello World! /h3   /body   /html

使用 mvn 命令打成 war 包。

把打成的 war 包拷贝 (其实拷贝 my-web-maven 文件夹也是一样的) 到 tomcat 中 webapps 目录下:

然后到 bin 目录下,双击

项目运行起来后,访问 http://localhost:8080/

证明我们的项目已经启动成功了。

接下来我们访问我们写的 Servlet:

http://localhost:8080/demo?message=hello

报错,HTTP 状态 404 – 未找到;

注意:这里访问的时候,我们需要把项目名称当做 contextPath,即访问方式应该是:

http://localhost:8080/my-web-maven/demo?message=hello 页面上输出

hello

轻松搞定,这样我们的项目就成功的部署到 tomcat 中。

IDEA 中的项目部署到 tomcat 中

创建一个 servlet 项目,项目名称 my-servlet。

Tomcat 入门知识点有哪些

Tomcat 入门知识点有哪些

新建一个类 MyServlet

Tomcat 入门知识点有哪些

进入我们刚刚安装的 tomcat 目录,进入到 lib 目录中,选中 servlet-api.jar。

Tomcat 入门知识点有哪些

Tomcat 入门知识点有哪些

Tomcat 入门知识点有哪些

点击 ok。

Tomcat 入门知识点有哪些

点击 Apply,然后点击 OK。

修改 MyServlet 内容:

package com.tian.servlet; import javax.servlet.*; import java.io.IOException; import java.io.PrintWriter; // 实现接口 Servlet,必须重写下面的这些方法  public class MyServlet implements Servlet { private transient ServletConfig servletConfig; @Override public void init(ServletConfig servletConfig) throws ServletException { this.servletConfig = servletConfig; } @Override public ServletConfig getServletConfig() { return servletConfig; } @Override public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException { String servletName = servletConfig.getServletName(); // 网页响应类型,浏览器将其渲染为 HTML 格式  response.setContentType(text/html  PrintWriter writer = response.getWriter(); writer.println(html head /head  +  body  Hello this is   + servletName +  /body /html  } @Override public String getServletInfo() { return  my first Servlet  } @Override public void destroy() { } }

修改 web.xml 文件内容:

?xml version= 1.0  encoding= UTF-8 ?   web-app 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   h2  hello world  /h2   /body   /html

IDEA 集成 tomcat

在我们的 IDEA 中添加我们安装的 tomcat:

Tomcat 入门知识点有哪些

Tomcat 入门知识点有哪些

来到 tomcat 配置 的界面:

Tomcat 入门知识点有哪些

配置 tomcat:

Tomcat 入门知识点有哪些

进入安装目录:

Tomcat 入门知识点有哪些

点击 OK,

Tomcat 入门知识点有哪些

然后进入 deployment 栏目:

Tomcat 入门知识点有哪些

添加我们创建的 servlet 项目:

Tomcat 入门知识点有哪些

自动就添加了我们的项目

Tomcat 入门知识点有哪些

然后点击 Apply,再点击 OK。

IDEA 集成 tomcat,以及把我们项目给关联起来了。下面我们就来运行一下:

Tomcat 入门知识点有哪些

启动 tomcat

点击绿色三角:

Tomcat 入门知识点有哪些

证明我们的项目在 tomcat 中已经启动成功

Tomcat 入门知识点有哪些

访问我们的 servlet

此时,我们就可以来访问我们的 servlet 了。

访问:http://localhost:8080/ 页面显示就是我们前面修改的 index.jsp 的内容。

再访问我们自己写的 Servlet:

http://localhost:8080/demo

Tomcat 入门知识点有哪些

成功的把我们的内容给输出来了。

“Tomcat 入门知识点有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注丸趣 TV 网站,丸趣 TV 小编将为大家输出更多高质量的实用文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-16发表,共计5717字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)