问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

struts actionform里面的reset()是做什么用的?

发布网友 发布时间:2024-10-05 22:00

我来回答

3个回答

热心网友 时间:2024-10-07 03:52

说起来很麻烦 转载下:

第一步:
对象的可视范围:request、session、application、page。
Request:在一个请求周期内有效。就是从你点击页面上的一个按钮开始到服务器返回响应页面为止(包括响应页面)。
Session:在一个用户与服务器建立连接的整个过程中有效。
Application:在整个web应用程序内有效。
Page:仅在一个jsp页面内有效。

第二步:
ActionForm在你确定的有效期(可视范围)内是唯一的。

第三步:
在每次为ActionForm赋值前调用它的reset方法。作用是使ActionForm中的值恢复初始状态。在应用中我们可以通过在reset中为变量赋初值的方式,使得页面上的某个对象有显示值。

第四步:
可视范围与赋值前的初始化结合。
由 于第二步所述特性,如果可视范围是request,则reset方法并不是很重要,因为你每次调用时都会产生一个新的ActionForm实例,所以你所 操作的ActionForm不会与别人分享同时也就不会受别人的影响;如果可视范围是session,由于在session范围内此ActionForm 是唯一的,所以你在session范围内需要用到此ActionForm的地方调用的都是同一个ActionForm,要是你没有在reset中对变量赋 初值那么前一次调用ActionForm是为它赋的值将在此次调用时有效,这到也没什么。但是,如果恰巧再次调用时你仅仅需要为ActionForm中的 一部分变量赋值,那么其余的变量将保持上一次得到的值,这样你就得到了一个“新旧混合体”,我想这多半不是你所期望的;如果可视范围是 application,那其影响就更是不难理解了,这时不但是你自己会影响你自己,使用应用的其他用户的操作也会影响到你。

第五步:
知 道了reset方法的作用和ActionForm在scope内唯一的特性后就为我们灵活处理ActionForm的行为提供了基础。比如说你现在需要跨 过多个页面收集数据信息,这时你就可以把scope设置为session,并且不实现reset方法――这样在每个页面put数据时都不会将之前收集的数 据清空,最后在你收集完数据后在Action中调用ActionForm中你自定义的初始化方法,如:resetField。
在具体的我也想不出了,还是要大家在应用时多多体会这些特性,这样才能把架构的威力发挥到最大。

这是我以前看到的一个帖子! 你好好理解 多用用RESET()方法就理解了!
祝好运!

热心网友 时间:2024-10-07 03:52

RESET的工作原理牵扯到了<HTML>标签的作用,当被访问的JSP页面中存在HTML标签的时候,HTML标签就会寻找表单中的ACTION值去SERVLET-CONFIG中去寻找对应的ACTIONPATH,从中读取配置文件来找到对应的ACTIONFORM,届时就会调用RESET方法来对表单中的内容来进行封装
RESET方法其实很简单就是针对表单中的元素进行初始化负责,就相当于默认值差不多了

建议楼上的别乱用SESSION作用域,因为谁都知道SESSION对象会被默认的在内存中保留半个小时,大大的增加了服务器负担
当然设置了除外,SESSION一般只有在处理身份问题时候才会被使用,也就是权限问题了。。。其他的地方慎用SESSION。会造成很多麻烦,因为SESSION的对象保存时间长所以会经常引起一些冲突

热心网友 时间:2024-10-07 03:53

说起来很麻烦 转载下:

第一步:
对象的可视范围:request、session、application、page。
Request:在一个请求周期内有效。就是从你点击页面上的一个按钮开始到服务器返回响应页面为止(包括响应页面)。
Session:在一个用户与服务器建立连接的整个过程中有效。
Application:在整个web应用程序内有效。
Page:仅在一个jsp页面内有效。

第二步:
ActionForm在你确定的有效期(可视范围)内是唯一的。

第三步:
在每次为ActionForm赋值前调用它的reset方法。作用是使ActionForm中的值恢复初始状态。在应用中我们可以通过在reset中为变量赋初值的方式,使得页面上的某个对象有显示值。

第四步:
可视范围与赋值前的初始化结合。
由 于第二步所述特性,如果可视范围是request,则reset方法并不是很重要,因为你每次调用时都会产生一个新的ActionForm实例,所以你所 操作的ActionForm不会与别人分享同时也就不会受别人的影响;如果可视范围是session,由于在session范围内此ActionForm 是唯一的,所以你在session范围内需要用到此ActionForm的地方调用的都是同一个ActionForm,要是你没有在reset中对变量赋 初值那么前一次调用ActionForm是为它赋的值将在此次调用时有效,这到也没什么。但是,如果恰巧再次调用时你仅仅需要为ActionForm中的 一部分变量赋值,那么其余的变量将保持上一次得到的值,这样你就得到了一个“新旧混合体”,我想这多半不是你所期望的;如果可视范围是 application,那其影响就更是不难理解了,这时不但是你自己会影响你自己,使用应用的其他用户的操作也会影响到你。

第五步:
知 道了reset方法的作用和ActionForm在scope内唯一的特性后就为我们灵活处理ActionForm的行为提供了基础。比如说你现在需要跨 过多个页面收集数据信息,这时你就可以把scope设置为session,并且不实现reset方法――这样在每个页面put数据时都不会将之前收集的数 据清空,最后在你收集完数据后在Action中调用ActionForm中你自定义的初始化方法,如:resetField。
在具体的我也想不出了,还是要大家在应用时多多体会这些特性,这样才能把架构的威力发挥到最大。

这是我以前看到的一个帖子, 你好好理解 多用用RESET()方法就理解了。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
石料加工服务可以全部交给第三人完成吗 山东沃尔德集团集团所辖公司介绍 齐鲁银行无忧贷和市民贷哪个好 什么叫补按揭 后按揭贷款什么意思 买房者续按揭有什么危害 加按揭是什么意思 八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 在struts2中,使用,在页面上点击之后,&lt;sx:datetimepicker&gt;的内容就会... 为什么无效了? 关于struts的reset方法问题,想让它无效 怎样知道水母会不会饿呢? 怎样的虾才新鲜?,吃虾注意这些搭配禁忌 虾是需要太阳直射还是只要太阳光的亮度就好了,也就是说照不到太阳只有... 途观的发动机号码在哪里? 我的电脑进不去系统了,显示的是NTLDR is missing 电脑蓝屏问题0x0000004E(0x0000008f,0x00009394,0x00000094,0x00000000... 俄罗斯哪些品牌 俄罗斯好用的化妆品推荐 俄罗斯网红推荐 2022年重阳节同学祝福语 博瑞2021款落地价多少?博瑞价格 黄褐斑的祛除方法 脸上斑能自己消退吗 车前草能和鹅蛋煎着吃吗车前草可以和鹅蛋煎着吃吗 WindowsXP用户账号被锁定,不能进入欢迎屏幕正常切换用户,请问如何解锁... ...还是XP系统问题,还有屏幕保护锁定密码忘了,怎么破解啊,求助_百度... 我的电脑是系统是xp你登进去长时间不动就会被锁定请问这怎么解除?前 ... 红米BM42怎样恢复出厂设置 Struts框架中 重写过reset()方法,提交jsp页面表单的过程中为什么会又执... 请问和怎么放在同一行 Struts1.x中的reset()方法有什么作用?? struts2配置问题,高手进 浙江工商职业技术学院大二上课吗 宁夏工商职业技术学院有招待所吗? 学咖啡师的前景怎样 山东外国语职业学院怎么样啊?我是今年的考生,希望那个学校的学哥学姐... 同一生物体的不同组织细胞中,含有的核DNA相同,含有的RNA种类 桃源竹海景区地址在哪里? 备孕一直怀不上需要做什么检查 梦见脚面流很多血 备孕二胎一直怀不上是什么原因 梦见脚面涌出血 脚面青筋暴起,是怎么回事 脚面青筋暴起怎么办? ...不疼也不痒的,没有感觉。都快两个星期了,看着 我的脚上长了个小疙瘩!是什么啊?有点硬.像死皮,不痒 ...长了个小硬疙瘩,但不疼也不痒,有一个月了,请问这是什么缘故啊?_百 ... 我前几天眼角下面突然冒出了一个红的疙瘩,硬硬的,摸在手上还很粗糙...