1.jsp---->action1---->2.jsp(显示结果)--->action2--->提交到数据库---->success

时间:2022-10-13 17:22:56
1.jsp---->action1---->2.jsp(显示结果)--->action2--->提交到数据库---->success 

在1.jsp中有form。

如何实现bean中数据的传输,在这里,我要把1.jsp中数据在2.jsp中显示,如果全都正确我就提交到数据库存储,如果不正确就返回修改。

在2.jsp中显示的是1。jsp中的数据,同时在2.jsp中用到了<html:submit/>
所以也有个form,

问题出现在,在action2中不能取得页面1中formbean的数据???

我如果想实现上述功能,该如何作??请指点,谢谢!!!!

8 个解决方案

#1


1。最简单的方法就是把在action1中方法整理好放到session中,然后再在action2中去取。
2。或者在action1中把formbean传到2.jsp中,但是2.jsp中的form的名字与类型和struts-config.xml中的一致,而且2.jsp中的数据属性与formbean中的那些set,get方法的属性名字
一样。

#2


就是上面说的做。
不过我的一般处理就是把2.jsp的参数放到1.jsp的action中(此过程还要通过facade来获得参数),其它是一样的

#3


如何将action1中方法放到session中??可不可以说得具体点呀??

#4


呵呵,谢谢;)

#5


action1中
   XXXform xxx = (XXXform)form; XXXform是你定义的Form;
   HttpSession session = request.getSession(false);
   session.setAttribute("form",xxx);

action2中
   HttpSession session = request.getSession(false);
   XXXform form = (XXXform)session.getAttribute("form");

#6


getSession(false),里面的false是什么意思??

#7


false是指当session不存在时不创建session.
true相反。。。

#8


我比较赞成射手爱狮子的第二种方法,可能是个人习惯觉得session比较占用资源,最好把东西放在request里,个人看法了

#1


1。最简单的方法就是把在action1中方法整理好放到session中,然后再在action2中去取。
2。或者在action1中把formbean传到2.jsp中,但是2.jsp中的form的名字与类型和struts-config.xml中的一致,而且2.jsp中的数据属性与formbean中的那些set,get方法的属性名字
一样。

#2


就是上面说的做。
不过我的一般处理就是把2.jsp的参数放到1.jsp的action中(此过程还要通过facade来获得参数),其它是一样的

#3


如何将action1中方法放到session中??可不可以说得具体点呀??

#4


呵呵,谢谢;)

#5


action1中
   XXXform xxx = (XXXform)form; XXXform是你定义的Form;
   HttpSession session = request.getSession(false);
   session.setAttribute("form",xxx);

action2中
   HttpSession session = request.getSession(false);
   XXXform form = (XXXform)session.getAttribute("form");

#6


getSession(false),里面的false是什么意思??

#7


false是指当session不存在时不创建session.
true相反。。。

#8


我比较赞成射手爱狮子的第二种方法,可能是个人习惯觉得session比较占用资源,最好把东西放在request里,个人看法了