struts如何实现mvc

 struts中核心类:ActionServlet,其中最主要的操作是RequestProcessor类中的process方法。

上篇博客提到struts实现mvc的框架图:

struts如何实现mvc_第1张图片

struts实现mvc的细粒度图如下:

struts如何实现mvc_第2张图片

  • 首先:Tomcat一启动,根据web.xml加载ActionServlet,读取struts配置文件中的struts-config中的配置读到内存。
  • 然后:根据url,读取struts-config中的path路径,取得ActionMapping。(1.2processPath1.3processMapping
  • 其次:根据ActionMapping中的name名称查找ActionForm。(1.4processActionForm方法)
  • 然后:实例化ActionForm并且放到Map中以及给ActionForm赋值。在赋值之前,首先执行reset方法。(1.5processPopulate方法)赋值之后,然后根据第三方组件BeanUtils,将表单中的字符串转成所需的类型。
  • 然后:创建一个Action实例,并且放到Map中。(1.6processActionCreate方法)
  • 再次:让Action实例处理请求,然后返回一个ActionForward实例(1.7processActionPerform方法)。
  • 最后:根据返回ActionForward,重定向或者转发到目的地。(1.8processForwardConfig方法)

 

 ps:其中的方法介绍参照struts1帮助:http://www.oschina.net/home/apidoc?api=struts-1.3.9

你可能感兴趣的:(tomcat,mvc,框架,struts,action,Path)