1. Web 资源的分类
web 资源按实现的技术和呈现的效果的不同,分为静态资源和动态资源两种
- 静态资源: html、css、js、txt、mp4 视频 , jpg 图片
- 动态资源: jsp 页面、Servlet 程序【动态资源必须依赖于服务器】
2. 常用的 Web 服务器
Tomcat:由 Apache 组织提供的一种 Web 服务器,提供对 jsp 和 Servlet 的支持【免费】
Jboss:是一个遵从 JavaEE 规范的、开放源代码的、纯 Java 的 EJB 服务器,它支持所有的 JavaEE 规范【免费】
Resin:是 CAUCHO 公司的产品,是一个非常流行的服务器,对 servlet 和 JSP 提供了良好的支持【收费】
WebLogic:是 Oracle 公司的产品,是目前应用最广泛的 Web 服务器,支持 JavaEE 规范, 而且不断的完善以适应新的开发要求,适合大型项目【收费】
3. Tomcat 服务器和 Servlet 版本的对应关系
- 下图截自:尚硅谷最新版JavaWeb全套教程
Servlet 程序从 2.5 版本是现在世面使用最多的版本
到了 Servlet3.0 之后,是注解版本的 Servlet 使用
4. .Tomcat 的使用
(1) 安装
找到你需要用的 Tomcat 版本对应的 zip 压缩包,解压到需要安装的目录即可
(2) 目录介绍
主目录内容如下
目录名称 | 作用 |
---|---|
bin | 存放 Tomcat 服务器的 可执行程序 |
conf | 存放 Tocmat 服务器的 配置文件 |
lib | 存放 Tomcat 服务器的 jar 包 |
logs | 存放 Tomcat 服务器运行时输出的日记信息 |
temp | 存放 Tomcdat 运行时产生的临时数据 |
webapps | 存放部署的 Web 工程 |
work | 存放 Tomcat 运行时 jsp 翻译为 Servlet 的源码、是 Tomcat 工作时的目录、是 Session 钝化的目录 |
其中 webapps
目录下已经存在了几个默认的工程,下面给出几个较重要的举例
工程名 | 描述 |
---|---|
docs | 用户指南 |
examples | 存放着 Servlets、JSP、WebSocket 的一些服务脚本和接口的样例 |
ROOT | 当访问服务器没有指明工程名称时,默认访问的工程 |
(3) 启动 Tomcat 服务器
-
找到 Tomcat 目录下的 bin 目录下的 startup.bat 文件
-
双击,之后会有黑色命令行窗口弹出
-
这样就可以了
(4) 通过命令行启动 Tomcat 服务器
-
win + r
打开命令行 - 进入到 Tomcat 的 bin 目录下
- 输入命令:
catalina run
- 这样就可以了
(5) 测试 Tomcat 服务器是否启动成功
打开浏览器,在浏览器地址栏中输入以下地址测试
1、http://localhost:8080
2、http://127.0.0.1:8080
3、http://自己的真实ip:8080
出现如下界面,就代码启动成功
(6)常见的启动失败的情况
问题:
双击 startup.bat 文件,出现一个小黑窗口,之后立马关闭
或者
在命令行输入catalina run
之后,出现这样的信息
原因:
没有配置好 JAVA_HOME
环境变量
解决:
在环境变量中添加一个变量 JAVA_HOME
,给它的值设置为 JDK 的安装目录即可,不要写到 bin 目录,写到 bin 目录的上一级目录即可
示例:
(7) Tomcat 的关闭
- 方法一:直接将弹出的命令行强行关闭,就可以停止 Tomcat 服务器
- 方法二:找到 Tomcat 的 bin 目录下的 shutdown.bat 双击,就可以停止 Tomcat 服务器
(8) 特殊的 ROOT 工程
- 只输入
http://localhost:8080/
时,没有指定工程的名称,默认访问ROOT
工程 - 只输入
http://localhost:8080/
时,没有指定资源的名称,默认访问index.html
文件【所有工程通用】
5. 修改 Tomcat 的端口号
- 【一般不修改,也不建议修改】
- MySQL 默认端口号 3306、Tomcat 默认端口号 8080、HTTP 默认端口号 80
- 找到 Tomcat 目录下的 conf 目录,找到 server.xml 配置文件
- 找到端口号为8080的位置进行修改
- 重启 Tomcat 服务器
6. 部署 Web工程到 Tomcat 服务器
(1) 第一种方法
- 把 web 工程的目录拷贝到 Tomcat 的 webapps 目录即可
- 访问时,只需要在浏览器中输入:
http://localhost:8080/Bilibili首页/index.html
- 其中:
Bilibili首页
是工程名称,index.html
是目标资源的名称
- 其中:
(2) 第二种方法
找到 Tomcat 下的 con\Catalina\localhost\
下,创建 xml 配置文件
- 文件名自定义,我设置为
bilibili.xml
- 访问时,只需要在浏览器中输入:
http:localhost:8080/bilibili/index.html
<!--
Context 标签的名称
reloadable:如果这个属性设为true,tomcat能够自动重新加载,我们修改过的代码和配置
path:指定 Web 应用的虚拟路径名,访问项目仅通过该名称即可
docBase:指定要部署的 Web 应用的源路径
debug:表示日志等级,代表日志调试信息,0提供最少的信息,9提供最多的信息,数越高,越详细
注意:我们实际访问的时候,表面上使用的是path的路径,但是实际访问的是docBase的路径,也就是说path实际上就是docBase的另一个名称
-->
<Context path="/bilibili" docBase="E:\006-小工具集合\Web项目\品优购" reloadable="true" workDir="D:\workspace\WebApp\work" debug="0"/>
7. 浏览器两种访问资源的方式的区别
- 在浏览器中访问 Tomcat 部署的工程和在浏览器中直接访问本机的工程有什么区别?
- 访问 Tomcat 部署的文件
- 直接访问主机的文件
- 二者最本质的区别就是使用的协议不同
- 一个是 http 协议,需要客户端与服务端进行交互
- 一个是 file 协议,仅解析出本机的文件即可