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指向
HttpServlet: service(){
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等方法即可
- 这大大减轻了我们开发的负担,避免了我们在一些无关紧要的地方浪费时间