开发者学堂课程【Tomcat 服务器入门详解:Jdk 和 Tomcat 安装配置详解】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/654/detail/10845
四、安装 JDK
1.在 Centos 中,可以使用 yum 安装 openjdk。
# yum install java-1.8.0-openjdk
# java -version
openjdk version "1.8.0 _212"
版本号
OpenJDK Runtime Environment(build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM(build 25.212-b04,mixed mode)
2. 本次使用 Oracle 官网的 JDK 8的 rpm 安装

选择需要的文件上传并安装即可,并无特殊依赖。
输入 # yum install jdk-8u191-linux-x64.rpm 回车即可安装。这样就将 Java 基础类库全部安装,实现的是 Java SE 桌面级编程,并不是 Java EE,但是要做应用服务器编程还不够,想实现 Java 后端 web 开发还不够。
需要区分 jdk 是属于什么情况,如果是容器就不需要多做修改,如果 jdk 以后需要部署其他内容,这个时候需要将 jdk 装到全局并且进行全局配置。

3.安装 jdk 后输入 vim/etc/profile.d/jdk.sh
(1)首先配置 Java home
查看已经安装好的 jdk 版本包:输入 cd/user/Java/

查询到版本为1.8.0,即为 长期支持版而且是大多数企业正在使用的版本,部分企业还在使用7,11用的比较少。
安装后多出两个软连接,latest 指向目录,指最后版本,若有比1.8更高的版本latest 会包含,而 default 指向 latest。
(2)输入:
export JAVA _HOME=/usr/java/default
export PATH=$JAVA_HOME/bin:$PATH
回车后可以查看一下 Java 版本 输入:java-version 后得出:

HotSpot 是使用的官方的虚拟机,在某些情况下,jdk 的小版本号也不能过高,在安装大数据的工具时,如果配合好了,使用没有问题情况下,不要随意升级版本,随意安装容易出现问题并且自己不会修改。
以上 JDK 已经全部安装配置完成,Java 可以应用起来了。
五、Tomcat
1.历史
起始于 SUN 的一个 Servlet 的参考实现项目 java Web Server,作者是 James Duncan Davidson,后将项目贡献给了 ASF。和 ASF 现有的项目合并,并开源成为顶级项目,
官网:http://tomcat.apache.org/。
Tomcat 仅仅实现了 Java EE 规范中与 Servlet、JSP 相关的类库,对应于 Java EE 其他规范一概没有实现,是 Java EE 不完整实现。
著名图书出版商 O’Reilly 约稿该项目成员,Davidson 希望使用一个公猫作为封面,但是公猫已经被另一本书使用,书出版后封面是一只雪豹。叫做《Tomcat 权威指南》封面如下

因为 Tomcat 应用比较广泛,资料比较多,公开资料很多,官方资料其实也可以应用观看。书上亦或是网上内容即使很全面,原理很清楚,但是需要实践出真理,在实践中发现问题、解决问题才是更好的提升。
2.(1)1999年发布初始版本是 Tomcat30,实现了 Servlet 2.2 和 JSP1.1 规范,不完整实现。
(2)Tomcat 4.x 发布时,内建了 Catalina(Servlet 容器)和 Jasper(SPengine)(用来转化 JSP,将其转换成 servlet 源码即. Java 文件,再从. Java 文件编译成字节码)等。
(3)商用的有 IBMWebSphere、
OracleWebLogic(原属于 BEA 公司)、OracleOc4j、Glassfish、JBoss 等。
(4)开源实现有 Tomcat、Jetty、Resin。
六、Tomcat 安装
1. 输入
tar xf apache-tomcat-8.5.42.tar.gz -C/user/local
Cd/user/local/
ln -sv apache-tomcat-8.5.42
编译后出现软连接

bin 为运行脚本、conf 是主配置目录、lib 放置炸包/库、logs 是日志、temp 是临时垃圾、webapps 最重要的目录是站点(默认路径)、work 是真正编译后中间的代码在这里。
2. bin 目录

绿色部分为我们所需要的部分
(1)catalina.sh 是主文件,主要运行就依赖于他,可以启动服务。
(2)startup.sh 快捷文件,也可以启动服务。
(3)shutdown.sh 关闭文件。
3. conf 配置文件目录

(1)主配置文件 server.xml 包括路径配置、虚拟主机配置。
(2)web.xml、context.xml 叫做全局配置,但是配置不同内容,影响所有的webapp,对于每一个 webapp 都可以单独配置 web.xml、context.xml,用局部配置覆盖全局配置。
(3)tomcat-users.xml tomcat 的管理用户
4. Lib jar 包

Jar 包即为类库,将写好的代码,打包成 jar 包,要有源数据文件,对源文件 jar包、依赖文件进行描述,可以使用一些工具右键解压即可。
5.webapp 目录

ROOT 是主目录,网站的根,需要注意全部大写,前面的都称之为 app。
6.目录结构
目录 | 说明 |
bin | 服务启动、停止等相关 |
conf | 配置文件 |
lib | 库目录 |
logs | 日志目录 |
webapps | 应用程序,应用部署目录 |
work | jsp 编译后的结果文件 |