用户通过提交jsp表单,表单中的action的路径就是所请求的action的地址(假设是a/b/c.do),通过http请求,交给ActionServlet来处理。
查找Web.xml文件,找到action-mapping文件,根据后缀.do找到相应的action-name(假设叫做action)。
通过action-name(action)找到具体的配置文件所在,比较大的工程通常不止一个配置文件,可以根据项目路径名(a/b/c.do)找到a-b-config.xml文件,对应的以a/b/为路径的action的配置文件都在此路径下。
匹配到a-b-config.xml文件后,在其中找到name为c的action的配置文件,根据其配置的ActionForm表单,将请求页面中的相应数据封装至actionform实例中,并将ActionForm传至相应的Action(一般叫CAction)实例中进行处理。
相应的Action(CAction)通过运行其execute(ps:也可以有其他方法,可以在action的配置文件中进行参数配置,默认执行的是execute方法)方法,来对ActionForm中封装的来自jsp页面http请求的数据进行处理,调用service、dao、等层对数据库进行操作,最后将返回的结果封装到ActionForm中。
- Action通过findForward方法,根据action配置文件中的mapping的配置将封装好的ActionForm通过http协议返回给相应的jsp页面显示。
Struts1的执行过程
最新推荐文章于 2023-12-04 20:39:01 发布