用getSessionAttr获取缓存中的数据,应该用的是Record接收,但是会出现不能强转为Record的错误,关键字是这种错误出现率很小,一般情况下都是正常的。以下为所在代码与错误截图:
Record userMap = getSessionAttr("userInfo");
请问这是什么原因?
很显然,是程序在某个地方向使用了相同的 key,向 session 中放入了 WebUser 对象,而不是 Record 对象,搜索一下代码中的 "userInfo" 这个 key 值就会发现,除了利用这个 key 向 session 中放入过 Record,还放入过 WebUser