Servlet

一、什么是Servlet
servlet 是用Java编写的服务器端程序,功能是交互式的浏览和修改数据,动态生成Web内容。
Servlet运行于支持Java的应用服务器中,Servlet可以响应任何类型的请求。

二、Servlet工作机制
1.用户发送请求到Servlet容器(如Tomcat)
2.Servlet容器从磁盘加载Servlet类的实例
3.Servlet容器解析Http请求
4.Servlet生成HttpRequest对象和HttpResponse对象并将这两个对象作为参数传入service方法中调用。
5.HttpServlet调用HttpRequest的有关方法,获取HTTP请求信息
6.HttpServlet调用HttpResponse的有关方法,生成响应数据
7.Servlet容器把HttpServlet的响应结果传给Web客户

三、Servlet生命周期
init( ),service( ),destroy( )是Servlet生命周期的方法。代表了Servlet从“出生”到“工作”再到“死亡 ”的过程。
1.init( ),当Servlet第一次被请求时,Servlet容器就会开始调用这个方法来初始化一个Servlet对象出来,但是这个方法在后续请求中不会在被Servlet容器调用。我们可以利用init( )方法来执行相应的初始化工作。调用这个方法时,Servlet容器会传入一个ServletConfig对象进来从而对Servlet对象进行初始化。

2.service( )方法,每当请求Servlet时,Servlet容器就会调用这个方法。第一次请求时,Servlet容器会先调用init( )方法初始化一个Servlet对象出来,然后会调用它的service( )方法进行工作,但在后续的请求中,Servlet容器只会调用service方法了。

3.destory,当要销毁Servlet时,Servlet容器就会调用这个方法。在卸载应用程序或者关闭Servlet容器时,就会发生这种情况,一般在这个方法中会写一些清除代码。

DispatcherServlet

一、什么是DispatcherServlet
DispatchaerServlet是SpringMVC的核心,所有的用户请求都会传到DispatcherServlet,由DispatherServlet统一分发到对应的Handler(Controller)中去。

二、SpringMVC的步骤
1.用户的请求统一发送到DispatcherServlet
2.DispatcherServlet 对请求URL进行解析,得到请求资源标识符(URI)
3.DispatcherServlet根据URI,调用HandlerMapping解析出请求对应的Handler
4.解析到对应的Handler后,由HandlerAdapter适配器处理。
5.HandlerAdapter会根据Handler来调用真正的处理器开处理请求,并处理相应的业务逻辑。
6.处理器处理完业务后,会返回一个ModelAndView对象,Model是返回的数据对象,View是个逻辑上的View。
7.ViewResolver会根据逻辑View查找实际的View。
8.DispaterServlet把返回的Model传给View。
9.通过View返回给用户。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐