Windows10上Tomcat 9安装与配置

Windows10上Tomcat 9安装与配置

一、Tomcat下载

首先打开Tomcat官网:Tomcat官网

Apache Tomcat®是Jakarta EE(正式的Java EE)技术的一个子集的开源软件实现。不同版本的Apache Tomcat可用于不同版本的规范。规范和相应的Apache Tomcat版本之间的映射是:Apache Tomcat Version兼容的Java Versions

进入官网后如下图所示,选择你所想要安装的版本,Tomcat 10.0现在已经到了生命周期的尽头。Tomcat 10.0.x 的用户应该 升级到 Tomcat 10.1.x 或更高版本。Tomcat 10.1.x 需要java11及更高版本,我这边预装的java8,在此选择安装Tomcat 9版本,点击Tomcat 9tomcat9文档

点击下图所示红框处开始下载,笔者此处选择的是绿色版下载(即下载完成之后需要自行配置环境变量),至于其余选项另行百度

1.1 Tomcat之前版本安装

目前下载的Tomcat 9最新版本为apache-tomcat-9.0.79-windows-x64.zip,若想要安装Tomcat 9之前的版本,我们在进入Tomcat 9下载界面后点击Archives档案室(其他版本同理)

例如我们想要下载9.0.8版本,我们下划找到此版本并点击

点击bin/目录

点击下图所示红框处开始下载,笔者此处选择的是绿色版下载(即下载完成之后需要自行配置环境变量),至于其余选项未来再补充,这样Tomcat 9以前版本压缩包就开始下载了。

下载完成后将压缩包解压至你想要放置的地方,我在此将压缩包解压至D盘

目录结构:

目录介绍如下:
bin:二进制执行文件。里面最常用的文件是startup.bat,如果是 Linux 或 Mac 系统启动文件为 startup.sh。
conf:配置目录。里面最核心的文件是server.xml。可以在里面改端口号等。默认端口号是8080,也就是说,此端口号不能被其他应用程序占用。
lib:库文件。tomcat运行时需要的jar包所在的目录
logs:日志
temp:临时产生的文件,即缓存
webapps:web的应用程序。web应用放置到此目录下浏览器可以直接访问
work:编译以后的class文件。

二、配置环境变量

解压完成后,开始配置系统变量,右击此电脑—>点击属性—>点击高级系统设置—>点击环境变量—>在系统变量栏下的操作如下:

操作系统变量名变量值注意
新建CATALINA_BASED:\apache-tomcat-9.0.79变量值须到tomcat的安装文件夹,不要到bin目录
新建CATALINA_HOMED:\apache-tomcat-9.0.79变量值须到tomcat的安装文件夹,不要到bin目录
编辑Path%CATALINA_HOME%\lib
编辑Path%CATALINA_HOME%\bin

进入cmd界面—>输入D:或者d:进入D盘—>输入cd D:\apache-tomcat-9.0.79\bin进入指定目录—>输入service.bat install指令安装 (附:service卸载命令:service.bat remove)

d:
cd D:\apache-tomcat-9.0.79\bin
service.bat install


执行完安装指令后如下图所示

tomcat 10.1.12

三、启动Tomcat

启动Tomcat: 在命令行中进入Tomcat的bin目录,然后运行statup.bat (Windows) 或startup.sh (Linux) 来启动Tomcat。

在tomcat解压路径下的bin文件夹内双击打开"tomcat9w.exe",在打开的软件界面点击“Start”即可。当我们看到Service Status:的值为Started时,表明Tomcat已经启动成功。

启动Tomcat
Tomcat已启动

同理,我们可以点击Stop来关闭Tomcat,当Service Status:的值为Stopped时,表明Tomcat已经关闭。

关闭Tomcat
Tomcat已关闭

四、端口

打开Tomcat目录中的conf目录,找到 server xm文件。在该文件中,您可以更改Tomcat使用的HTTP端口(默认为8080) 和HTTPS端口 (默认为8443) 。


五、测试Tomcat是否启动成功

在浏览器地址栏输入http://localhost:8080/,若出现下图界面,则为Tomcat启动成功。

tomcat 10.1.12

OK! 安装成功!


六、部署web应用

在D:\ProgramFiles\Tomcat 9.0\webapps\ROOT 目录下新建test.jsp文件,代码如下:

<%@ page contentType="text/html;charset=UTF-8" %>
<% out.print("zc自学教程 : https://www.zc.com"); %> 

开启之后,打开浏览器,输入“http://localhost:8080/test.jsp”,成功的话会显示一下的画面:


七、关联Tomcat和Eclipse

Eclipse J2EE下载后,解压即可使用,我们打开Java EE ,选择菜单栏,弹出如下界面:

Windows->preferences->add->Apache Tomcat v9.0->Next
选择Tomcat安装目录,jre版本->Finish
Apply
File -> New -> Project -> Dynamic Web Project
输入项目名称 -> 配置服务器 -> 完成
工程文件结构

各个目录解析:
deployment descriptor:部署的描述。
Web App Libraries:自己加的包可以放在里面。
build:放入编译之后的文件。
webapp:放进写入的页面。

在webapp文件夹下新建一个test.jsp文件,代码如下:

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>zc自学教程</title>
</head>
<body>
<%
    out.println("Hello World!");
%>
</body>
</html>

程序运行之前,我们先修改一下浏览器选项:

接着我们运行该项目:


运行时,弹出如下错误:(如果没有此错误,请忽略),原因是,我们之前开启了Tomcat服务器,这明显是多余的,因为程序运行时,eclipse会自动开启Tomcat服务器。所以我们先手动关掉tomcat软件,再次运行程序,就行了,或者修改Tomcat 端口。


报错:解决在eclipse 项目TomcatTest中使用Tomcat运行Jsp文件时,出现“the server cannot be started because one or more of the ports are invalid. open the server editor and correct the invalid ports.”报错的问题。
报错译文:服务器无法启动,因为一个或多个端口无效。打开服务器编辑器并纠正无效端口。

解决:出现这个问题原因是我们刚刚安装好Tomcat时并没有在浏览器中配置Tomcat的端口。双击对应的Servers项目:


浏览器访问 http://localhost:8080/jspDemo/test.jsp, 即可输出正常结果:

八、Eclipse创建Servlet

动态网站项目中创建一个servlet:右键点击项目名称(jspDemo)或项目中的src,在弹出的菜单中选择 "New -> Other… -> Web -> Servlet",如果找不到Servlet 选项,选择"File-->New->Other-->Web->Servlet":

jspDemo->New->Other
Web->Servlet
Servlet类名称->包名称->Next->Next->finish
Servlet类


ZcEclipseServlet.java如下:

package z.c;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class ZcEclipseServlet
 */
@WebServlet("/ZcEclipseServlet")
public class ZcEclipseServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public ZcEclipseServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		response.getWriter().append("Served at: ").append(request.getContextPath());
		response.getWriter().append("------------");
		response.getWriter().append("By Eclipse IDE.");
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

注意: 如何知道要访问URL后面是 ZcEclipseServlet ,可查看 ZcEclipseServlet 类定义前面定义的注解: @WebServlet("/ZcEclipseServlet") ,例如,修改为 @WebServlet("/hello"),那么访问对应的URL应为: http://localhost:8080/jspDemo/hello

posted @ 2023-08-17 14:40  weiwei0123  阅读(1044)  评论(0编辑  收藏  举报