我需要能够将对象中的值与int进行比较,但我似乎无法使类型转换工作。我已经尝试了这里描述的所有方法:Session attribute access and converting to int?但它们都给了我一个空指针异常。这是我的代码不起作用。
以下是将值放入会话的代码。
<script>sessionStorage.clickcount=1;</script>
<input type ="hidden" name="ttmp" value="222" id="ttmp" />
<script>document.getElementById('ttmp').value = sessionStorage.clickcount;</script>
在脚本之前和之后使用输入行尝试了这一点。
<%
String value = request.getParameter("ttmp");
if (value != null) {
session.setAttribute("test", value);
}
Integer userid = Integer.parseInt(session.getAttribute("test").toString());
...
if (userid == 1) {
...
}
%>
答案 0 :(得分:2)
试试这个Integer.parseInt((String)session.getAttribute("test"))
<%
String value = request.getParameter("ttmp");
if (value != null) {
session.setAttribute("test", value);
}
Integer userid = Integer.parseInt((String)session.getAttribute("test"));
...
if (userid == 1) {
...
}
%>
答案 1 :(得分:1)
立即尝试。
<%
String value = request.getParameter("ttmp");
if (value != null) {
session.setAttribute("test", value);
}
int userid=0;
if ((session.getAttribute("test") != null) && (session.getAttribute("test") != ""))
{
userid = Integer.parseInt(session.getAttribute("test").toString());
}
%>