用户登录后看到的却是别人的信息 项目中出现这样的问题:一个用户输入自己的用户名和密码登录后却看到的是别人的信息,数据库里的信息是正确的,是通过vpn访问的,请问是什么原因? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 信息从哪读出来的?缓存?库?如果是库,确认执行了select操作了么? 使用的浏览器session缓存问题... 就算clear或set都不行,这是浏览器的问题... 这个啊, CSDN不就是这样吗???? 是vpn的问题,因为是通过vpn访问的用户会出现这些问题,但是其他的是正常的,但是有没有哪位高人知道怎么解决呢? csdn也经常是的我也经常看到别人的博客通知 以前也遇到过这样的问题,好像听人说过这是“Session穿透”,好像是听一个培训老师说的,一软件公司为别人做软件出现了这种问题,差点没被别人索赔,还好问题解决了,不过没说怎么解决的。以前项目中也遇到过类似的问题,可能是因为浏览器中缓存的问题,当时项目测试,吓了一跳。不知道在session中存放数据前先用一下request.getSession().invalidate()方法使session失效再用request.getSession()获得新的session会不会有用,以前时间紧,也就没细研究,直接过去了,不过我感觉如果要改用这种方法应该可行。这种情况确实不太容易发现,很少碰见这种情况。故意让它出现还真不容易。希望上面的方式能解决问题。 同意这个,某些访问量大的,容易这样。后面我的做法就是,session里面保存的user object信息尽量少,有时甚至就是个name/id,需要的时候再去查找。不要一个user里面有name password phone email等大量信息 你用到servlet了吗?servlet就是一个单实例,多线程的形式。所以,你不要把登陆的进去的信息做为servlet的属性了。这样是线程不安全的。 你不能DEBUG看吗?DEBUG读出来的数据与WEB显示数据不一样,就是WEB那边有问题.要不你抓HTTP包看看. 有没有用 apache 的 负责均衡? 是不是html 也存在缓存了? 用到servlet了,不过这个项目只允许一个人有增删改的权限,这样应该没有线程问题吧 关键是客户那边不让我们看到正式数据库中的数据,而且这个问题是上线后才发生的,而且他们每个人都是通过vpn登录的,我们没有vpn的账号,客户也不给我们创建,所以本地没法debug啊 使用NetBeans6.8部署项目到glassfishV3是发生部署错误 JBoss本机IP识别问题求高人解答 hibernate 使用数据库mysql 插入数据 乱码问题 Axis1.4加密认证问题! 各种应用服务器的优势? 关于sax解析xml的问题,大家是不是都有这样的问题? DB2写数据库乱码问题? 如何比较两个时间差了多少毫秒啊? 关于eclipse2.1的一个菜鸟问题. EJB部署时的异常! 关于LDAP 请问网址跳转的时候,直接问号加参数什么意思?
缓存?库?如果是库,确认执行了select操作了么?
我也经常看到别人的博客通知
以前项目中也遇到过类似的问题,可能是因为浏览器中缓存的问题,当时项目测试,吓了一跳。
不知道在session中存放数据前先用一下request.getSession().invalidate()方法使session失效再用request.getSession()获得新的session会不会有用,以前时间紧,也就没细研究,直接过去了,不过我感觉如果要改用这种方法应该可行。
这种情况确实不太容易发现,很少碰见这种情况。故意让它出现还真不容易。希望上面的方式能解决问题。
同意这个,某些访问量大的,容易这样。
后面我的做法就是,session里面保存的user object信息尽量少,有时甚至就是个name/id,需要的时候再去查找。
不要一个user里面有name password phone email等大量信息
要不你抓HTTP包看看.