HttpServlet
每次访问Servlet时,Service方法都会被调用一次。
- 因为servlet中的service方法一般用来获取数据的,那么获取数据就会接受get或者post或者其他方法的请求。根据不同的请求方法,来做出不同的代码逻辑处理,所以Servlet资源被每一次访问的时候,Servlet方法都需要做一个判断,判断是哪种请求方法,这样是很麻烦的.
- 所以HttpServlet就继承了GenericServlet(servlet的实现类),然后在类中声明了所有的请求方法的实现方法(如get,post等),然后在service方法内部,判断是哪种方法的请求,通过不同的请求来调用不同的请求实现方法。
总结:所以每次访问servlet资源的时候,都会去执行service方法,然后去Httpservlet中的service方法就会判断是哪种方法的请求,通过不同的请求去调用不同的请求的实现方法。
HttpServlet部分源码如下:
String method = req.getMethod(); // 该方法是获取请求方法的名称
doGet方法:
doPost方法: