问题描述:
一个系统,当用户登录后将其信息保存在会话中session.setAttribute("user", user);当在一个功能中需要用到user的信息时,在一个方法中User user = (User) request.getSession().getAttribute("user"); 理应是没有问题的 但是他的确就出错了?网上说检查session域设置的时间范围,但是一般默认设置都是30分钟,一般都没有错,后面自己不断检查代码,发现问题出在代码书写规范上 所以大家一定要代码书写规范!花了1个多小时的时间检查,这些本来是可以避免的!!!
原因:我在编写JavaBean时,编写一个user类 把uid的属性设置成这样:当用getAttribute("user")取值是能取到user信息,但是获取user.getUid()时就没有值了 就是null,那后面一系列的操作就受到影响了。
解决:通过查阅知在编写JavaBean时有个规范:字段命名潜规则,前两个字母要么都大写,要么都小写,否则会出错
所以 命名规范很重要