做weixin的项目,项目的思维逻辑跟做web端的一样。用户相关存入session中,openId存入cookie。每次需要调用用户信息时,都需从数据库中重新获取。然后,奇怪的问题发生了。有时候刚刚将用户信息存入session,cookie中也有openId,但转眼在另一个方法中查session以及cookie中的数据时都没有了。而此时若是有一个对用户实体类的操作(因为默认设想是用户信息被获取,那么一时半会肯定不会消失了),那么因为用户实体为空,则会抛出空指针异常。但更奇怪的时,空指针异常抛出,服务器也捕捉到了,但代码还是往下运行了,到结束去查看数据库,更改的数据生效了。奇了怪了。真是。
贴一段代码说明一下:
// 用户信息获取
try {
userEntity = getUser(request, response, 3);
} catch (Exception e) {
e.printStackTrace();
}
// 状态更新
userEntity.setMeetingNumberStatus(1);
userEntity.setMeetingNumber(null);
userEntity.setMeetingPassword(null);
不知有没有人也碰到过这种情况。