Kela's Blog

            前面的路很坎坷,但毕竟是条路.也许走过这一段就会发现,走过去就是梦想中的地方.因此坚持成为此刻唯一能做且必须去做的事情.
posts - 9, comments - 27, trackbacks - 0, articles - 15



说明
:在Struts中对于每一个请求,控制器都会先调用ActionForm的reset( )方法,然后把用户输入的表单数

据组装到ActionForm中。也就是说,我们在显示界面中用到的表单的值(默认值),使用这里得到。

问题提出:很多人喜欢将验证使用Validator验证框架,它使用起来很方便。但在我们的实际工作当中,我

们需要将(比如一篇文章)的添加,编辑放在一个显示页面去操作,这样我们在编辑的时候就必须在现实

的页面查询到我们需要编辑的文章信息,如 标题,时间,内容,文章的录入人等这些信息,这样在显示

页面我们无法避免的在HTML代码中夹杂我们的查询(无论采用何种方式),然后将查询的内容对应到具

体使用的表单的value中进行编辑。这样,功能完成了,但页面看起来有些乱。

解决办法:利用ActionForm的reset()方法,利用它对数据初始化的能力。我们利用文章的ID号分别判断到

文章添加和编辑状态,然后再reset()方法中,可以结合数据库的查询将需要编辑的字段(表单值)初始化

在这里,(当然了添加就直接初始化了),这样我们的显示页面就只有HTML和Struts的标签了,显示页面

变得轻巧了许多。

优点:显示页面变得简洁轻巧,页面修改变得简单。

缺点:ActionForm reset()内容增加,变得庞大。需要很好的规划组织(当然了这种代价也是值得的)。


这种使用的方式可能有的朋友并不赞同,欢迎大家来讨论。因为没有什么是一成不变的,灵活的应用是我

们生存之道。

Feedback

# re: Struts中更好的利用ActionFrom Bean 中reset()方法  回复  更多评论   

2005-11-11 16:31 by duduwolf
同意,我就经常用这种方式^_^

只有注册用户登录后才能发表评论。


网站导航:
 
分享到: