Tomcat是web服务器,我们的项目应用是部署在webapps下,然后通过特定的url访问。
创建项目
- 在Tomcat的webapps中建立文件夹,比如:myweb
- 创建WEB-INF文件夹,用于存放项目核心内容
- 在web-inf文件夹下创建classes,用于存放class文件
- 创建lib,用于存放jar文件
- 创建web.xml,项目配置文件,到ROOT项目下的WEB-INF复制即可
- 创建WEB-INF文件夹,用于存放项目核心内容
- 把网页hello.html复制到myweb文件夹中,与WEB-INF同级
准备工作:
WEB-INF下:
项目myweb(在webapps里)下:
即可打开Tomcat测试,输入连接如下:
http://localhost:8080/myweb/hello.html
即后面加: /项目名/静态资源名
url由四部分组成:协议,主机,端口,资源路径
访问流程图:
常见错误1:404
访问的资源不存在,检查路径和资源名称!
注意,我们要把.class文件放在classes文件夹下以部署我们的项目,也就是我们写好的java文件需要编译,点idea上面的build,build project,然后出现out目录即可
但是这个时候Tomcat依旧无法访问到这个.class文件需要在web.xml中配置才行。
打包war
还有一种部署,我们把整个项目打包成war包放在webapps目录下,相当于把我们这个项目的发行版部署到了Tomcat服务器,这个时候我们的url根据war包的资源路径就可以直接访问到项目内容
Servlet
作用:
- 接收客户端请求,完成操作
- 动态生成网页
- 将包含操作结果的网页返回给客户端
http协议
什么是http?
超文本传输协议
-
支持客户端(浏览器)/服务器模式
-
简单快速,客户端请求方法:GET POST等
-
无状态协议
-
无连接:每次tcp连接只处理一个或多个请求,服务器处理完请求后就断开了连接。
现在一般是长连接,服务器响应之后不会直接断开,而是等几秒之后断开,这几秒有新的请求,就还是通过旧连接处理,没有请求再断开
通信流程
- 客户与服务器建立连接(三次握手)
- 客户向服务器发送请求
- 服务器接收请求,并返回资源到客户端
- 服务器关闭与客户端连接