`
webcode
  • 浏览: 5954895 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

struts1执行form提交的流程

 
阅读更多
1、ActionServlet是在web.xml中配置的一个自动启动项。当web服务器启动时,也就同时实例化了ActionServlet类,ActionServlet会去初始化struts-config.xml的配置信息,并将其加载到内存中,并会
去实例化action-bean,action-form等对象。
2、当ActionServlet接收到来自客户端的请求时,就会去检索和去请求相匹配ActionMapping实例,如果没有找到则返回500错误.

3、如果找到了就检查对应的ActionForm实例是否存在,

a、如果存在,先把该实例相关数据reset清空一下,然后就把用户提交的表单数据填充到ActionForm实例中.

b、如果不存在,就创建一个ActionForm对象,再把用户提交的表单数据填弃到ActionForm实例中

4、接着,再根据配置,看看是否要对表单进行验证(validate),如果需要验证,则调用ActionForm的validate()方法对表单进行验证.

a、如果验证没通过,则返回错误信息。

b、如果不需要验证,或者需要验证但validate方法返回null或者是返回一个不包含ActionMessage的ActionErrors对象的话,表明验证成功。则继续下一步

5、ActionServlet根据ActionMapping实例所包含的映射信息决定将请求发送给哪个Action,如果对应的Action实例不存在,则创建该Action的实例,然后调用该Action的execute()方法

6、执行完Action实例的execute()方法后,该方法会返回一个ActionForward对象

7、ActionServlet再把客户端发过来的请求,转发给ActionForward对象所指向的JSP组件

8、ActionForward所指向的JSP组件再生成动态网页,送回给客户端。

分享到:
评论

相关推荐

    struts2 标签库 帮助文档

    1. <s:bean name=""></s:bean>-----类似于struts1.x中的,JavaBean的值 C: 1. <s:checkbox></s:checkbox>-----复选框 2. <s:checkboxlist list=""></s:checkboxlist>-----多选框 3. <s:combobox list=""></s:...

    深入浅出Struts 2 .pdf(原书扫描版) part 1

    2.2 Struts的动作处理流程 15 2.3 拦截器 17 2.4 Struts配置文件 18 2.4.1 struts.xml文件 19 2.4.2 struts.properties文件 26 2.5 Struts应用程序示例 26 2.5.1 部署描述文件和Struts配置文件 27 2.5.2 动作类 28 ...

    Java学习笔记-个人整理的

    {1.9}流程控制}{31}{section.1.9} {1.9.1}\texttt {if\ldots esle\ldots }}{31}{subsection.1.9.1} {1.9.2}\texttt {switch}}{31}{subsection.1.9.2} {1.9.3}\texttt {while}}{32}{subsection.1.9.3} {1.9.4}\...

    ssh(structs,spring,hibernate)框架中的上传下载

    Struts+Spring+Hibernate实现上传下载    本文将围绕SSH文件上传下载的主题,向您详细讲述如何开发基于SSH的Web程序。SSH各框架的均为当前最新版本:  •Struts 1.2  •Spring 1.2.5  •Hibernate 3.0  本文...

    《MyEclipse 6 Java 开发中文教程》前10章

    第九章 开发Struts 1.x应用 166 9.1 介绍 166 9.2 创建Struts项目 168 9.2.1 创建Web项目 169 9.2.2 加入 Struts开发功能 169 9.3 使用Struts工具 171 9.3.1 Struts配置文件编辑器 171 9.3.2 Struts组件向导 173 9.4...

    最新Java面试宝典pdf版

    21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. 软件工程与设计模式 126 1、UML方面 126 2、j2ee常用的设计模式?说明工厂模式。 126 3、开发中都用到了那些设计模式?用在什么场合? 127 九. j2ee...

    Java面试宝典2010版

    21、STRUTS的工作流程! 22、spring 与EJB的区别!! 八. 软件工程与设计模式 1、UML方面 2、j2ee常用的设计模式?说明工厂模式。 3、开发中都用到了那些设计模式?用在什么场合? 九. j2ee部分 1、BS与CS的...

    Java面试笔试资料大全

    21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. 软件工程与设计模式 126 1、UML方面 126 2、j2ee常用的设计模式?说明工厂模式。 126 3、开发中都用到了那些设计模式?用在什么场合? 127 九. j2ee...

    java面试宝典2012

    21、STRUTS的工作流程! 137 22、spring 与EJB的区别!! 137 八. 软件工程与设计模式 138 1、UML方面 138 2、j2ee常用的设计模式?说明工厂模式。 138 3、开发中都用到了那些设计模式?用在什么场合? 138 九. j2ee...

    Java面试宝典-经典

    21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. 软件工程与设计模式 126 1、UML方面 126 2、j2ee常用的设计模式?说明工厂模式。 126 3、开发中都用到了那些设计模式?用在什么场合? 127 九. j2ee...

    java面试题大全(2012版)

    21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. 软件工程与设计模式 126 1、UML方面 126 2、j2ee常用的设计模式?说明工厂模式。 126 3、开发中都用到了那些设计模式?用在什么场合? 127 九. j2ee...

    Java面试宝典2012版

    一. Java基础部分 7 1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 7 2、Java有没有goto? 7 3、说说&和&&的区别。...21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 ...

    Java面试宝典2012新版

    21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. 软件工程与设计模式 126 1、UML方面 126 2、j2ee常用的设计模式?说明工厂模式。 126 3、开发中都用到了那些设计模式?用在什么场合? 127 九. j2ee...

    JAVA面试宝典2010

    21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. 软件工程与设计模式 126 1、UML方面 126 2、j2ee常用的设计模式?说明工厂模式。 126 3、开发中都用到了那些设计模式?用在什么场合? 127 九. j2ee...

    spring security 参考手册中文版

    14.4.1认证成功与失败的应用流程 125 15. Servlet API集成 127 15.1 Servlet 2.5+集成 127 15.1.1 HttpServletRequest.getRemoteUser() 127 15.1.2 HttpServletRequest.getUserPrincipal() 127 15.1.3 ...

Global site tag (gtag.js) - Google Analytics