Servlet规范-作用介绍

Servlet课堂案例回顾


一、Servlet规范作用
    ----------------------------------------------------------------------------------------------------------
    1.在Servlet规范中,指定【动态资源文件】开发步骤 --- 02_Servlet接口实现类
        1)创建一个java类继承HttpServlet类,使之成为Servlet的实现类        
        2)在实现类中重写doGet/doPost方法
        3)将Servlet接口实现类信息【注册】到Tomcat服务器
            【网站】->【web】->【WEB-INF】->【web.xml】
            <servlet>
            <servlet-name>ll</servlet-name> <!--声明一个变量存储servlet接口实现类路径-->
            <servlet-class>com.bjpowernode.controller.OneServlet</servlet-class> <!--声明servlet接口实现类路径-->
            </servlet>
            <!--需要起一个简短的别名-->
            <servlet-mapping>
                <servlet-name>ll</servlet-name>
                <url-pattern>/one</url-pattern>  <!--起别名 /开头-->
            </servlet-mapping>

        ----GenericServlet抽象类,重写了Servlet接口中的所有抽象方法(抽象类降低开发难度)
        ----HttpServlet抽象类,继承了GenericServlet抽象类,同时对service方法进行了重写,写好了什么时候调用doGet方法,什么时候调用doPost方法
        ----Serivlet的接口实现类继承HttpServlet类,只需重写一下doGet/doPost方法,届时服务器会创建此接口实现类的实例对象,然后调用方法
    ----------------------------------------------------------------------------------------------------------
    2.在Servlet规范中,指定Http服务器调用动态资源文件规则 
        Tom服务器调用接口实现类的规则:
            1)Tomcat服务器创建Servlet接口实现类实例对象 Servlet oneServlet = new oneServlet();
            2)Tomcat服务器会根据实例对象调用service()方法处理当前请求 oneServlet.service();
            service()方法在HttpServlet抽象类中已经重写过,里面写好了什么情况下使用doGet/doPost,
            调用的时候会调用一开始在Servlet接口实现类中重写好的doGet/doPost方法
    ----------------------------------------------------------------------------------------------------------            
    3.在Servlet规范中,指定Http服务器管理动态资源文件实例对象规则 --- 03_Servlet生命周期
        1)Servlet接口实现类只能由服务器创建
        2)默认情况下,Http服务器接收到Servlet接口实现类的第一次请求时自动创建Servlet接口实现类
        3)手动配置下,可以要求Http服务器在启动时自动创建Servlet接口实现类的实例对象
            servlet>
                   <servlet-name>mm</servlet-name> <!--声明一个变量存储servlet接口实现类类路径-->
                   <servlet-class>com.bjpowernode.controller.OneServlet</servlet-class>
                   <load-on-startup>30<load-on-startup><!--填写一个大于0的整数即可-->
              </servlet>
    ----------------------------------------------------------------------------------------------------------

二、HttpServletResponse接口
    1.介绍
        1)HttpServletResponse接口来自于Servlet规范中,在Tomcat中存在servlet-api.jar
        2)HttpServletResponse接口实现类由Http服务器负责提供
        3)HttpServletResponse接口负责将doGet/doPost方法执行结果写入到【响应体】交给浏览器
        4)响应对象
    
    2.主要功能
        -------------------------------------------------------------------
        1)将执行结果写入【响应体】
            通过响应对象向Tomcat服务器索要输出流
            Print out=response.getWrite();
            out.write(); 【字符】,【字符串】,【ASCII码】,50-> '48' 
            out.print(); 将真实数据写入到响应体中
        -------------------------------------------------------------------    
        2)设置响应头【content-type】属性值,从而控制浏览器使用对应编译器
            response.setContentType("text/html;charset=utf-8");
        -------------------------------------------------------------------
        3)设置响应头中【location】属性,将一个请求地址赋值给【location】,从而控制浏览器向指定服务器发送请求
             response.sendRedirect(url);
             浏览器接收到响应包后,如果发现响应包中有location属性
             自动通过地址栏向location指定网站发送请求
             redirect:重定向
        -------------------------------------------------------------------

三、HttpServletRequest接口
    1.介绍
        1)HttpServletRequest接口来自于Servlet规范中,在Tomcat中存在servlet-api.jar
        2)HttpServletRequest接口实现类由Http服务器负责提供
        3)HttpServletRequest接口负责在doGet/doPost运行时读取Http请求协议包中信息
        4)请求对象
    
    2.主要功能
        -------------------------------------------------------------------
        1)读取Http请求协议包中【请求行】信息
            通过响应对象向Tomcat服务器索要输出流
            请求对象.getRequestURL().toString()
                .getMethod();
                .getRequestURI();
        -------------------------------------------------------------------    
        2)可以读取保存在Http请求协议包中【请求头】或【请求体】中请求参数信息
            获取所有参数的名字返回枚举类型,用类似迭代器的方式,通过参数名字
            得到对应的参数值
            doPost需要:
            request.setCharacterEncoding("utf-8");//使用utf-8字符集对请求体二进制内容进行一次重写解码
        -------------------------------------------------------------------
        3)可以代替浏览器向Http服务器申请资源文件调用
        -------------------------------------------------------------------

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值