使用session保存对象为什么会出现空指针

在进行修改数据的时候,想把修改前的数据和修改后的数据进行对比。所以在点击修改的时候调用根据id获取到对象的方法,然后将其存入session中。但是为什么总是空指针?!谢谢... 在进行修改数据的时候,想把修改前的数据和修改后的数据进行对比。所以在点击修改的时候调用根据id获取到对象的方法,然后将其存入session中。但是为什么总是空指针?!
谢谢大家的支持啊。呵呵,session在成员变量声明的,根据id取值也是得到了对象的。HttpSession session=request.getSesion(); 这样得到的session不知道为什么总是为空。在网上看了很多网友说HttpSession session=request.getSesion(false); 试了, 还是为空。
后面使用了spring里面的一个方法设值,取值,可以进行对象的对比了。
展开
 我来答
kevintop3
2013-09-22 · TA获得超过1.5万个赞
知道小有建树答主
回答量:890
采纳率:100%
帮助的人:534万
展开全部
如果别的操作没有问题,请确认你操作前袭启的session 和操作后答禅肆的session是同一个么? 是否是同一个用户,在同一个时刻操作?

由于session是有时效性的,且是针对用户的,不是一个全局的对象。 建议你考虑放在一个静态清轿的Map中、或缓存,或Application中。
追问
我是在基类中定义的session,在子类中用的还是那个session。其实,我就是想在基类的根据id得到对象的方法中把对象存到session中,在子类的save方法一开始就用session取出来,然后取得当前的对象,再进行对比。不知道还有什么好办法没?像你开始说的Map、缓存、Application都没试过。可以指教下不
追答
如果是你从request中取session为空,可以 用 

HttpSession javax.servlet.http.HttpServletRequest.getSession(boolean create) 方法来获取,create参数为true,则当session为空时,创建一个session。 代码如下:


HttpSession session=request.getSession(true);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
被吹起来的猪
2013-09-22
知道答主
回答量:39
采纳率:0%
帮助的人:28.2万
展开全部
HttpSession session=request.getSesion();
你好像没有申明session对象。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e3d9f6c
2013-09-22
知道答主
回答量:23
采纳率:0%
帮助的人:4万
展开全部
session对象没有放入, 最好贴下代码看看
追问

debug了下,发现session=request.getSession() 这样得到的session为空........

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pyfllm
2013-09-22
知道答主
回答量:24
采纳率:0%
帮助的人:3.4万
展开全部
session 没有保存到对象的值吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zxl8876
2013-09-22
知道答主
回答量:32
采纳率:0%
帮助的人:17.9万
展开全部
查一下传过去的id ,是否拿到值了;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式