博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ActionForm工作原理
阅读量:5034 次
发布时间:2019-06-12

本文共 912 字,大约阅读时间需要 3 分钟。

刚学过ActionForm的工作原理,为了想更好的理解,想整理出来,也方便大家参考,有一下步骤:

(1)检查Action的映射,确定Action中已经配置了对ActionForm的映射。

 

ExpandedBlockStart.gif
代码
 
<
form-beans
>
        
<
form-bean 
name
="loginForm"
 type
="#"
></
form-bean
>
    
</
form-beans
>
<!--
两个name同名才行
-->
       
<
action-mappings
>
           
<
action 
path
="#"
 type
="#"
 name
="loginForm" scope="request" validate="false"
>
               
<
forward 
name
="#"
 path
="#"
></
forward
>
           
</
action
>
       
</
action-mappings
>

 

(2)根据name,查找form-bean配置信息。

(3)检查Action的form bean的使用范围,确定在此范围下(request、session)是否已有Form bean实例。

(4)如当前范围下已存在form bean实例,而对当前请求来说,是同一类型的话,就重用它。

(5)否则重新构建一个form bean实例,并且调用构造方法,保持在一定的范围。

(6)form bean的reset()方法被调用

(7)调用对应的setter方法,对状态属性赋值

(8)如validatede属性设为true,那么就调用form bean的validatede()方法(服务器校验)

(9)如validatede()没有返回任何bug,控制器将Actionform作为参数,传给Action实例的execute()方法并执行

工作流程图如下:

说明:reset(),用于属性复位,控制给bean赋值之前用。

注:调用顺序:先调用构造方法->reset()->setter(),如果刷新页面,则会调用构造方法和reset方法

转载于:https://www.cnblogs.com/azai/archive/2010/03/15/1686694.html

你可能感兴趣的文章
ORA-12538: TNS: no such protocol adapter
查看>>
盒子模型
查看>>
局域网协议
查看>>
[HNOI2012]永无乡 线段树合并
查看>>
SqlServer之Convert 函数应用格式化日期(转)
查看>>
软件测试领域中的10个生存和发展技巧
查看>>
2017/09/15 ( 框架2)
查看>>
Centos下源码安装git
查看>>
gulp-rev-append md5版本号
查看>>
IO流之File类
查看>>
sql 基础语句
查看>>
CF717A Festival Organization(第一类斯特林数,斐波那契数列)
查看>>
oracle直接读写ms sqlserver数据库(二)配置透明网关
查看>>
控件发布:div2dropdownlist(div模拟dropdownlist控件)
查看>>
Oracle composite index column ordering
查看>>
ActiveReports 报表控件官方中文入门教程 (3)-如何选择页面报表和区域报表
查看>>
kaggle竞赛
查看>>
区块链入门教程
查看>>
域 搭建OU 组织单元
查看>>
npm常用命令
查看>>