Servlet是运行在Web服务器或应用服务器上的程序,它是作为来自Web浏览器或其他HTTP客户端的请求和HTTP服务器上的数据库或应用程序之间的中间层, 下面所说的web服务器以Tomcat为例
了解请求和响应的过程能更好的理解Servlet做的事情。
这里我们结合MVC架构进行描述,先介绍什么是MVC
M是Model的简写,为模型层,模型层又可以细分三个部分
结合我所画的图说明整个过程
假设浏览器发给服务器一个登录的请求,整个过程如下:
这就是大致的一个流程,但并不是所有的请求响应过程都是一模一样,有的可能比较复杂,有的可能比较简单
在上面提到的请求和响应的过程中,Servlet就是Controller类,controller继承了Servlet类。创建一个Servlet类,需要如下几步( 这里我用的是IDEA编译器,使用的Tomcat容器 )
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; public class TestController extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("这是Servlet类"); } }
<servlet> <servlet-name>test</servlet-name> <servlet-class>TestController</servlet-class> </servlet> <servlet-mapping> <servlet-name>test</servlet-name> <url-pattern>/test</url-pattern> </servlet-mapping>
url-pattern是请求的操作名,servlet-name是请求操作名对应的名字,servlet-class是servlet-name对应的Servlet类。
启动Tomcat服务器,打开浏览器输入URL地址+请求的操作名,如下: http://localhost :8080/untitled_war_exploded/test
在控制台就能看到TestController执行了,输出信息如下:
本篇文章就到此结束,下篇文章将介绍Servlet对象的继承关系