JSP获取session设置的int值
程序员文章站
2022-06-05 14:13:59
...
逻辑大概如下:
int id = 10;
session.setAttribute("ID",id);
//执行完将跳到另一JSP页面
问题是在另一个JSP页面中如何获取到这个id的值呢。
下面这样是会报错的。
int id = session.getAttribute(ID);
联想到之前自己用session获取一个String类型用过String的强制转换,再结合Integer.parseInt(String)就写出了这样的:
int id = Integer.parseInt((String)session.getAttribute(ID));
但是这样写还是会报错,错误原因是java.lang.String不能转化为java.lang.Integer。这样就很奇怪了,实在是想不通。那就换个思路,既然那不能间接转化,那就直接转化试试:
int id = (Integer)session.getAttribute;
结果证明这样是可以的在定位到这个问题之前,也是遇见了一个很奇怪的问题:
具体的报错原因无法再现了,大概有:
Unable to compile class for JSP
An error occurred at line: 1,095 in the generated java file
解决思路是,定位到出错问题的JSP页面,检查一下该JSP的最顶部导入的包,删掉那个不认识的就行。