Servlet学习-01

1、Servlet的使用

1、Java新建实体类OneServlet,其继承HttpServlet类,并重写doGet()方法和doPost()方法
2、在web.xml中对OneServlet进行注册

2、Servlet使用中用到的编程思想

2.1、重写规则

OneServlet需要处理浏览器的什么请求,那就需要重写父类的对应方法。

比如浏览器对OneServlet发出了GET请求,那相应的OneServlet就需要重写doGet()方法

2.1、 抽象类作用

降低接口实现类对接口实现过程难度,将接口中不需要使用的抽象方法交给抽象类进行完成,

这样接口实现类只需要对接口需要方法,进行重写

2.1、子类实现接口规则

2.1、 this指向

HttpServletservice(){
                        if(请求方式 == GET){
                            this.doGet();
                        }else if(请求方式 == POST){
                            this.doPost();
                        }
                    }
                    
       OneServlet:  doGet   doPost
       
       Servlet oneServlet = new OneServlet();
       
       oneServlet.service();
  • 上述代码中,OneServlet继承了HttpServlet,当Tomcat服务器调用OneServlet的service方法时,由于OneServlet没有重写service方法,此时调用的是父类HttpServlet中的service方法
  • service方法中this.doGet(),实际上this指的是OneServlet的实例对象oneServlet,由于OneServlet已经重写了doGet方法,则此时调用的是OneServlet的doGet方法,只有当没有重写时,才会调用HttpServlet中的doGet方法

2.1、继承规则

  • OneServlet继承HttpServlet,而HttpServlet继承GenericServlet,GenericServlet实现了Servlet, ServletConfig, Serializable这三个接口
  • 由于Servlet的接口实现类需要实现很多个方法,但我们实际上只用到了其中的service方法,所以GenericServlet帮助我们解决了那些不用到的方法,而HttpServlet继承了GenericServlet,使得HttpServlet不用去实现那些不用到的方法,只需重写需要用到的方法即可
  • 同理OneServlet也不需要重写service方法,这个方法已经被HttpServlet实现了,我们只需实现真正要用到的doGet、doPOST等方法即可
  • 这大大减轻了我们开发的负担,避免了我们在一些无关紧要的地方浪费时间

你可能感兴趣的:(Servlet,Java)