首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

怎么自动清空struts表单域

2012-10-09 
如何自动清空struts表单域?为了某种需要,formBean的SCOPE设置成了session。执行action后发现上一次输入的表

如何自动清空struts表单域

?

为了某种需要,formBean的SCOPE设置成了session。执行action后发现上一次输入的表单<html:form>数据还在上面。有什么办法可以让struts自动清空表单域?

想了一会,问题解决了。原来不是<html:form>的问题,而是formBean本身的问题。如果FormBean的scope是request,那么它只在请求发生时被创建,请求结束后它也就被废弃了。既然formBean的scope是session,那么它在用户建立与服务器的会话之时就被创建,而且在整个会话过程中,它一直是有生命的。如果它的属性值不为空,自然会反映到与之相关的<html:form>里。

我的解决办法是在执行数据库操作后,手动将formBean的属性值清空:

……
String sql = "INSERT articles valueS('','" + myform.getTitle() + "','" + myform.getContent() + "',null," + folder +");";
int i = mysql.executeUpdate(sql);
myform.setTitle(null);
myform.setContent(null);

?

另一个解决办法就是将scope设置为request.

热点排行