Tomcat、HTTP、Servlet

Tomcat的目录结构

  1. bin:该目录下存放的是二进制可执行文件
  2. conf:这个目录下包含了server.xml和web.xml
  3. lib:Tomcat的类库,里面存放Tomcat运行所需要的jar文件
  4. logs:存放日志文件,记录Tomcat启动和关闭的信息,如果启动Tomcat时有错误,异常也会被记录到日志文件中
  5. temp:Tomcat的临时文件,这个目录下的东西在停止Tomcat后删除
  6. webapps:存放web项目的目录,其中每个文件夹都是一个项目;其中ROOT是一个特殊的项目,在地址栏中没有给出项目目录时,对应的就是ROOT项目
  7. 运行时生成的文件,最终运行的文件都在这里

项目部署及访问静态资源

Tomcat是Web服务器,我们的项目应用是部署在webapps下的,然后通过特定的URL访问。
创建webapps中建立文件夹(项目应用),比如:myweb
创建WEB-INF文件夹,用于存放项目的核心内容

  1. 创建classes,用于存放jar文件
  2. 创建lib,用于存放jar文件
  3. 创建web.xml,项目配置文件(到ROOT项目下的WEB-INF复制即可)
    把网页hello.html复制到myweb文件夹中,与WEB-INF在同级目录

URL访问资源

URL主要有4部分组成:协议、主机、端口、资源路径
http://localhost:8080/WebProject/test.html

Servlet

  1. 概念:Servlet:Server Applet的简称,是服务器端的程序,可交互式的处理客户端发送到服务端的请求,并完成操作响应。
  2. 作用:接收客户端请求、动态生成网页、将包含操作结果的动态网页响应给客户端。
  3. 可通过GenericServlet或HttpServlet完成Servlet的编写
  4. 注解方式使用servlet
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/test")
public class BasicServlet extends HttpServlet{
@Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("doget");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("dopost");
    }
}

注解的常用属性
name:Servlet名字
value:配置url路径,可以配置多个
urlPattern:配置url路径,和value作用一样,不能同时使用
loadOnStartup:配置Servlet的创建的时机,如果是0或正数启动时创建,如果是负数,则访问时创建,数字越小优先级越高。

HTTP协议

  1. 无连接:无连接指的是每次TCP连接只处理一个或多个请求,服务器处理完客户的请求后,即断开连接。采用这种方式可以节省传输时间。
    HTTP1.0版本是一个请求响应之后,直接就断开了,称为短连接。
    HTTP1.1版本不是响应后直接就断开,而是等几秒种,这几秒钟之内有新的请求,那么还是通过之前的连接通道来收发消息,如果过了这几秒钟用户没有发送新的请求,就会断开连接。称为长连接。
    无状态是指协议对事务处理没有记忆能力。

  2. HTTP协议通信流程
    客户与服务器建立连接
    客户向服务器发送请求
    服务器接受请求,并根据请求返回相应的文件作为应答
    客户与服务器关闭连接(四次挥手)

  3. HTTP请求报文:请求行 (请求方法/地址 URL协议/版本)、请求头、空行、请求正文

  4. HTTP响应报文:状态行、响应头、空行、响应正文

  5. 常见的状态码

状态代码状态描述说明
200OK客户端请求成功
302Found临时重定向
403Forbidden服务器收到请求,但是拒绝提供服务,服务器通常会响应正文中给出不提供服务的原因
404Not Found请求的资源不存在,例如,输入了错误的URL
500Internal Server Error服务器发生不可预期的错误,导致无法完成客户端的请求
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值