如何在应用程序一开始就将变量保存到会话中? 当我第一次运行应用程序时,不会执行以下代码。
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
HttpSession session = request.getSession(true);
session.setAttribute("flag", true);
//etc...
}
答案 0 :(得分:0)
该代码不会在服务器启动时执行,因为此时没有请求,因此没有会话。此方法属于servlet,一旦某个客户端点击映射到它的url,就会调用该servlet。
如果您需要在应用程序启动时执行某些操作,请使用ServletContextListener。如果必须在webapp中存储一些用于“全局”使用的变量,请使用ServletContext。如果你真的必须将它存储到会话中,请使用HttpSessionListener。