Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java session.getAttribute(“用户名”).toString();JSP页面中发生错误?_Java_Jsp - Fatal编程技术网

Java session.getAttribute(“用户名”).toString();JSP页面中发生错误?

Java session.getAttribute(“用户名”).toString();JSP页面中发生错误?,java,jsp,Java,Jsp,会话中的值为空。在JSP页面中编写此代码时,会发生错误 String user = session.getAttribute("username").toString(); String user = (String)session.getAttribute("username"); 但是当我这样写的时候,没有错误发生 String user = session.getAttribute("username").toString()

会话中的值为空。在JSP页面中编写此代码时,会发生错误

String user = session.getAttribute("username").toString();
String user = (String)session.getAttribute("username");
但是当我这样写的时候,没有错误发生

String user = session.getAttribute("username").toString();
String user = (String)session.getAttribute("username");

为什么?

这是因为
session.getAttribute(“username”)
返回
null
,可以将其转换为
字符串
,而不会出现任何问题,但是如果您尝试对
null
refefernce执行任何操作,您将得到
NullPointerException
。下面是一个演示:

class Main {
    public static void main(String[] args) {
        String user = (String) null;// No problem
        System.out.println(user);
        user.toString();// This will throw NullPointerException
    }
}
输出:

null
Exception in thread "main" java.lang.NullPointerException
    at Main.main(Main.java:5)