日期:2014-05-18  浏览次数:20794 次

清除session的内容的问题
我现在需要利用session来传递一个查询条件,eg:session.setAttribute( "a ",b);    
由于需要根据不同的条件来查询多次,但是当我进行第二次查询的时候却发现第一次保存在session中的查询条件依然存在,即第二次执行session.setAttribute( "a ",b)后a的值不是第二次选中的条件,而是与第一次的条件的组合。    
请问怎么在进行第二次查询的时候能清空第一次保存在a中的值啊?

------解决方案--------------------
应该是会替换掉的,真不行就先session.removeAttribute( "a ") 在session.setAttribute( "a ",b)
------解决方案--------------------
楼上说的有道理。

但总觉得用session来传递一个查询条件不太好。
用request.setAttribute和request.getAttribute`是否好一点呢?
------解决方案--------------------
session.removeAttribute( "a ")
或存request中
------解决方案--------------------
参数传递
1session
2url
3request
可以移除此session:session.removeAttribute( "a ").
但如果是查询的话用大量的session而且频繁操作 不是很妥
------解决方案--------------------
如果不能覆盖的话,就清除一下session.removeAttribute( "a ").

不过如果仅仅是两个页面之间的传递,还是建议用 request 来获取 查询条件