ActionServlet的工作原理

ActionServlet的工作原理
ActionServlet它负责接受所有的request,并且产生相对应的response到请求的页面。但是它怎么知道对应呢?这里就存在一个map文件(我习惯这么叫它)Struts-config.xml,它包括了resource文件、如何到达下一个页面、下面一个页面是什么、页面的校验规则、怎么样显示错误信息(如ActionMessage的使用)的定义。

一般来说,它(ActionServlet)通常是处于待命状态,一旦容器(j2ee的容器,入tomcat,jboss,glassfish等等)接受到请求,它对应的doget和dopost将会处理对应的get和post请求,这里需要注意的是,外部的浏览器不能直接调用这些do××××请求,只能是由容器控制。

ActionServlet收到请求之后,它将会调用RequestProccessor对象来处理httprequest请求的消息。如checkerrors等。下一步,它根据浏览器的请求路径、struts-config.xml文件中对应的请求路径和Action Bean的对应关系来调用对应的Action Bean的excute方法,action bean处理完成之后,调用业务模型,调用完成之后,将含有返回下一个页面返回信息的ActionForward对象传给ActionServlet,然后由actionservlet转换到下一个页面返回给浏览器。工作原理如图所示:

ActionServlet的工作原理

 

转载:
作者:博爱老头@博爱老头的草屋
地址:http://www.icnote.com/Struts-action-servlet/