Tomcat服务器是一个免费的开放源代码的Web应用服务器。
Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet 和JSP规范总是能在Tomcat中得到体现。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,是目前比较流行的Web应用服务器。
目前最常用的组合: jdk8、mysql5、tomcat8
Tomcat 的 下载地址:https://tomcat.apache.org/
tar.gz 文件 是linux操作系统下的安装版本
exe文件是window操作系统下的安装版本
zip文件是window操作系统下压缩版本(我们选择zip文件)
找到你需要用的 Tomcat 版本对应的 zip 压缩包,解压到需要安装的目录即可。
tomcat运行依赖于java环境:
- bin 专门用来存放 Tomcat 服务器的可执行程序
- conf 专门用来存放 Tocmat 服务器的配置文件
- lib 专门用来存放 Tomcat 服务器的
- jar 包 logs 专门用来存放 Tomcat 服务器运行时输出的日记信息
- temp 专门用来存放 Tomcdat 运行时产生的临时数据
- webapps 专门用来存放部署的 Web 工程。
- work 是 Tomcat 工作时的目录,用来存放 Tomcat 运行时 jsp 翻译为 Servlet 的源码,和 Session 钝化的目录。
找到 Tomcat 目录下的 bin 目录下的 startup.bat 文件,双击,就可以启动 Tomcat 服务器。
启动成功之后,如下:
常见的启动失败的情况有,双击 startup.bat 文件,就会出现一个小黑窗口一闪而来。
这个时候,失败的原因基本上都是因为没有配置好 JAVA_HOME 环境变量。
常见的 JAVA_HOME 配置错误有以下几种情况:
一:JAVA_HOME 必须全大写。
二:JAVA_HOME 中间必须是下划线,不是减号-
三:JAVA_HOME 配置的路径只需要配置到 jdk 的安装目录即可。不需要带上 bin 目录。
配置 JAVA_HOME 环境变量:
1、打开命令行
2、cd 到 你的 Tomcat 的 bin 目录下
3、敲入启动命令:catalina run
打开浏览器在,在浏览器的地址栏中输入:
http://127.0.0.1:8080或者http://localhost:8080
当出现如下界面,说明 Tomcat 服务器启动成功!!!
注:Localhost相当于127.0.0.1
Mysql 默认的端口号是:3306
Tomcat 默认的端口号是:8080
“平时上百度:http://www.baidu.com:80 HTTP 协议默认的端口号是:80 ”
重启Tomcat服务,只需要在浏览器中输入访问地址格式如下:
http://ip:port/工程名/目录下/文件名
访问:http://localhost:8080/book/
访问成功,说明成功部署了。
找到 Tomcat 下的 conf 目录\Catalina\localhost\
下,创建如下的配置文件:
abc.xml 配置文件内容如下:
<!-- Context 表示一个工程上下文 path 表示工程的访问路径:/abc docBase 表示你的工程目录在哪里 -->
<Context path="/abc" docBase="G:\book" />
拷贝前端项目代码 到指定的目录下:
重启Tomcat服务,访问这个工程的路径如下:http://ip:port/abc/ 就表示访问 指定的 docBase
目录,如下:
在windows环境开发下,我们可以发现启动 Tomcat 的时候,日志是乱码的,如下:
因为 windows 默认的编码为 GBK,所以只需要将日志的编码格式修改一下即可。
java.util.logging.ConsoleHandler.encoding = UTF-8
中的UTF-8更改为GBK#java.util.logging.ConsoleHandler.encoding = UTF-8
java.util.logging.ConsoleHandler.encoding = GBK
- src 目录存放编写的 java 源代码
- web 目录专门存放web工程的资源,例如:html、css、js等
- WEB-INF 目录是一个受服务器保护的目录,浏览器无法直接访问到此目录的内容
- lib 目录用来存放第三方的 jar 包。(IDEA还需要自己配置导入)
- web.xml 这是整个web工程的配置部署描述文件,可以在这里配置很多web工程的组件,
比如:Servlet程序、Filter过滤器、Listener监视器、Session超市..等等
首先在 index.jsp 写上一些内容:
启动 Tomcat 如下:
浏览器呈现如下:
有时候,我们开发页面JSP的时候,如果没有配置资源热部署,那么每次都要重启一遍 tomcat 才能看到自己写的新内容,如下:
当我们开发项目,将代码上传仓库,然后再拉取到其他电脑开发,那么就会发现项目里面的 模块没有了配置,大致如下:
配置好如下:
浏览器显示如下:
报如下异常: java.net.BindException: Address already in use: JVM_Bind 8080
解决办法:
Mysql 默认的端口号是:3306
Tomcat 默认的端口号是:8080
“平时上百度:http://www.baidu.com:80 HTTP 协议默认的端口号是:80 ”
打开命令行输入: netstat -ano
找到占用了8080 端口的 进程的id
去任务管理器kill掉这个id对应的程序