到web.xml中配置Servlet程序:
<!--配置HiServlet--><servlet><servlet-name>HiServlet</servlet-name><servlet-class>com.li.servlet.HiServlet</servlet-class></servlet><servlet-mapping><servlet-name>HiServlet</servlet-name><url-pattern>/hiServlet</url-pattern></servlet-mapping>点击Tomcat,选择redeploy

文章插图
在浏览器中输入
http://localhost:8080/web应用名/hiServlet,后台显示如下:说明HiServlet类重写HttpServlet的doGet方法被调用了

文章插图
7.1怎么执行到doGet和doPost

文章插图
如上图所示,HiServlet类(自己写的)继承了HttpServlet,HttpServlet继承了GenericServlet抽象类,而GenericServlet抽象类又实现了Servlet接口,Servlet接口里面有service方法 。
当Tomcat调用HiServlet里面service方法的时候,发现HiServlet里没有该方法,就会根据类的查找关系,在HttpServlet里面去找service方法,找到了就去执行 。

文章插图

文章插图
如上图所示,this实际的运行类型是HiServlet,因此在执行doGet方法的时候,实际上运行的是HiServlet中的doGet方法 。
动态绑定:当调用对象方法的时候,该方法会和该对象的内存地址/运行类型绑定8.IDEA开发Servlet程序
- 说明
手动开发Servlet需要程序员自己配置Servlet,比较麻烦,在工作中,直接使用IDEA开发Servlet会更加方便
例子
- 如下图:选中右键在src目录下创建的servlet文件夹,选择new->选择Servlet

文章插图
idea文件右键创建New没有Create New Servlet的解决办法
- 在弹出的窗口中按照需求进行选择,然后点击OK
如果使用xml的方式进行开发,就不用选择Create Java EE 6+ annotated class
否则就是使用注解的方式 。

文章插图
- 点击ok后,如果使用的是xml文件开发,就会自动配置<servlet>标签
注意:自动配置的只有<servlet>标签,<servlet-mapping>标签需要自己写

文章插图
- 在自动生成的OkServlet.java中编写自己的业务处理代码
package com.li.servlet;import javax.servlet.*;import javax.servlet.http.*;import java.io.IOException;public class OkServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//可以写自己的业务处理代码System.out.println("OkServlet doGet()");}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//可以写自己的业务处理代码System.out.println("OkServlet doPost()");}} - 点击redeploy,重新发布 。然后在浏览器中输入
http://localhost:8080/servlet_demo/okServlet发送请求 。

文章插图
后台输出如下:

文章插图
