// ... 处理数据完成。
处理数据时放在session里
处理数据时放在session里
解决方案 »
- mysql如何解决utf8字符集乱码问题
- struts2 和 spring 整合的问题
- 如何在下拉列表中对列表元素的name值加空格
- (向mrtsing提问)请问你有spring+struts+hibernate的用户管理系统
- ssh一些设计疑问
- 从。net转到java上容易吗,敬请赐教!
- 新建EJB3.0群,大家共同努力!1320063
- 北京思维加速业务基础平台有谁用过,大家讨论讨论
- jdbc的批量更新我在循环中addBatch("..."),在循环外executeBatch(),但是只添加最后add的那个记录,为什么?
- Eclipse3 M7不能正常运行问题!急!在线等!
- 我想学j2ee,可是我的电脑跑不起来jbuilder,求助
- BMP中,ejbStore()是不是要显式调用的?
在session里面存放这些临时参数,一定要记得清除,不然越积越多就完蛋了。
request倒是可以存以下,但是只针对forward,redirect就没办法了。搂主的问题我也想问很久了....
ActionForm actionForm,
HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) { // ... 处理数据
if(actionMapping.getScope().equals("request")){
httpServletRequest.setAttribute("keyword","software");
}else{
HttpSession session=httpServletRequest.getSession();
session.setAttribute("keyword","software");
} // ... 处理数据完成。
return mapping.findForward("success"); }
return mapping.findForward("listSomething.do?keyword=software")
<forward name="ShowListPage" path="/do/PageAction?param1=value"/>
return mapping.findForward("listSomething.do?keyword="+softwarevalue)
然后再下个action中用xxx.getAttribute()
return mapping.findForward("listSomething.do?keyword="+softwarevalue)
这样行就不用那么烦了不太同意BillyW(阿弥陀佛)
第二个办法是
<forward name="ShowListPage" path="/do/PageAction?param1=value"/>
那个path是不能动态改变的第一个方法更偏向于jeoky(jeoky)的做法:
if(actionMapping.getScope().equals("request")){
httpServletRequest.setAttribute("keyword","software");
}else{
HttpSession session=httpServletRequest.getSession();
session.setAttribute("keyword","software");
}
最好就是封装一下,写成这样
存:
ActionSaver.setObjectToScope(Object obj,String name, String scope);
取:
Object ActionSaver.getObjectFromScope(String name);决定了,就这样做吧
return new ActionForward("listSomething.do?keyword="+keyword);经测试完全可用。1,临时数据不应放入session。
2,用request.setAttribute("keyword", keyword)可复用性降低了。例如:我需要在界面上放置几个菜单:软件(listSomething.do?keyword=software)、硬件(listSomething.do?keyword=hardware)、服务(listSomething.do?keyword=service),如果用attribute,显然不能满足上述要求。因此只能用parameter。
3,各位说的mapping.findForward("listSomething.do?keyword="+keyword),我没有尝试过,私下以为这是不可行的。mapping只是一个表示基于Digester的配置项对象,难道还能对URL进行分析,知道哪里是servlet部分,哪里是parameter部分?谢谢各位帮助!
return mapping.findForward("listSomething.do?keyword="+softwarevalue)
这是不行的,我证实return new ActionForward("listSomething.do?keyword="+keyword);
这是可以的混在一起了。