Servlet中初始化顺序问题

今天遇到一个问题出了空指针异常

public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
Enumeration<String> initParameterNames =getInitParameterNames();
while(initParameterNames.hasMoreElements()) {
String s = initParameterNames.nextElement();
String initParameter = getInitParameter(s);
System.out.println(s);
}
}
这里会出现空指针,因为这个service()是被定义在Servlet接口中,一开始会最先定义执行
getInitParameterNames()是被定义在GenericServlet类中,初始化比service()晚

因此在service()中调用
getInitParameterNames()会出现空指针异常,service()执行时
getInitParameterNames()还没有被加载
特此记录一下,在遇到空指针时不仅要考虑对象有没有被创建,还要考虑方法的加载顺序问题

Servlet中初始化顺序问题

上一篇:针对Hbuilderx内置终端无法输入问题,总结了三种方法供大家参考


下一篇:windows下Emacs的安装与配置