Servlet初步总结《1》

1.什么是Servlet

    Servlet是一种Java程序,它扩展了Web服务器的功能,作为一种服务器端的应用,当被请求时开始
    执行。
    Servlet是sun公司提供的一门用于开发动态web资源的技术。
    Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向浏览器输出数据),
    需要完成以下2个步骤:
     1、编写一个Java类,实现servlet接口。
     2、把开发好的Java类部署到web服务器中。
按照一种约定俗成的称呼习惯,通常我们也把实现了servlet接口的java程序,称之为Servlet

2.servlet实现的三种方式,以及他们之间的联系.
    实现Servlet接口
    继承GenericServlet类
    继承HttpServlet类
    联系:
        1. 实现了Servlet接口的类 属于Servlet规范,可以放在容器中运行
        2. GenericServlet.但是
        没有重写Service方法.是抽象类,实现了Servlet接口,并重写了Servlet中的init(ServletConfig config)方法
        3. HttpServlet继承了GenericServlet类,重写了Service方法,并将Service方法的参数
        ServletRequest,ServletResponse强转成HttpServletRequest,HttpServletResponse,并且此处为7中请求
        对应的提供7种方法,根据请求的方式调用对应的方法.
3.Servlet生命周期
    是指一个Servlet创建、初始化、执行、销毁的过程
    1.创建:
        编写servlet---->配置web.xml---->部署项目至tomcat----->启动tomcat--->
        通过配置来创建:默认(第一次被访问)

    2.初始化:
        通过Init来初始化Servlet
        
    3.执行
        因为父类中对service方法进行了重写,里面调用了doxxx方法,我们只需要在子类中去重写doxxx方法
        父类再去调用
    3.4销毁
        当前服务器进行正常关闭或者重启的时候,Tomcat会调用Servlet实例的 destroy() 方法,

4.简述Get请求和Post请求的区别
    0.
        HTTP底层是Tcp/Ip,所以GET/POST底层也一样,本质上都是TCP链接,
        只不过由于HTTP的规定,和浏览器的限制导致的不同

    1.
        GET方式传参,参数会显示在地址栏中
        POST方式传参,参数不会显示在地址中
    2.
        GET方式传参,并且参数的长度也会被地址栏的长度而限制
        POST方式传参,参数是在请求体中,并且参数长度并没有直接限制
        
    3.
        GET产生一个TCP数据包,post产生两个TCP数据包
        get:浏览器先发送header,和data给服务器,服务器响应200(返回数据)
        post:浏览器先发送header,服务器响应100,浏览器在发送data,服务器响应200(返回数据)

5.跳转和重定向

    服务器内部跳转:
        1.使用request完成

        2.URL不变,跳转的本质是在服务器内部把请求和响应进行转发,转发给下一个指定的资源

        3.浏览器做了一次访问请求

        4..request.getRequestDispatcher(path).forward(request, response)方法
        
    客户端重定向:
        1.使用response完成

        2.URL改变,重定向的本质是把新的资源路径返回给浏览器

        3.3.浏览器做了至少两次访问请求

        4.sendRedirect(path)方法

    

5.HTTP协议是什么?为什么要使用HTTP协议

    超文本传输协议 (HTTP-Hypertext transfer protocol) 是一种详细规定了浏览器和万维网服务器之间互相通
    信的规则,通过因特网传送万维网文档的数据传送协议。HTTP是一个应用层协议,由请求和响应构成,
    是一个标准的客户端服务器模型。
    
    因为所有的服务器默认状态是用http协议进行信息发布和处理的,虽然web服务器基本都支持SSL
    但是由于https服务需要对服务器进行配置,需要特定的证书,就会增加成本。

6.简述HTTP请求的组成

    客户端请求:
        请求行,request line
        消息报头(请求头),request head
        请求正文,request body
    服务端响应:
        状态行
        响应报头
        响应正文

    请求头和请求正文之间是一个空行,这个行非常重要,它表示请求头已经结束,接下来的是请求正文。

    可见性:get会将提交的数据显示到url上,页面会被浏览器缓存,

    请求参数长度限制:get请求最多1024kb,post没有限制

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值