有关Session和servletContext长期占用服务器内存的解决方案

2021-07-12 09:46:13 浏览数 (1)

马克-to-win:有关Session和servletContext长期占用服务器内存的解决方案就是:对于确定不再需要的数据,一定要及时释放所占 资源,比如:context.removeAttribute("mysqlds");否则的话,严重的情况可能造成内存泄露。(请参见我Java部分第 三章内存泄漏部分知识。)

4) pageContext: 保存的键值仅在本个页面有效。在未来学习Taglib过程当中,将发挥巨大作用。类变量被所有用户(浏览器)只在这一页时共享(例如例1.1),而pageContext 被某个用户(浏览器)只在这一页时才有。pageContext范围比类变量小,和局部变量是一样的,但局部变量可以在非service的方法中用,而 pageContext只能在service方法中用。 见例子2.4

5)局部变量:转化成servlet后的某个方法中的局部变量。

6)类变量:转化成servlet后的类变量。

例 2.3

<%@ page contentType="text/html; charset=GBK" %>

<html>

<body>

<%

request.setAttribute("rName","rmark-to-win");

application.setAttribute("aName","amark-to-win");

session.setAttribute("sName","smark-to-win");

request.getRequestDispatcher("/Cookie/AddCookie").forward(request,response);

/*如用下面的response,request就取不出来了。 结果就变成如下了 null amark-to-win smark-to-win*/

// response.sendRedirect("http://localhost:8080/ServletHello/Cookie/AddCookie");

%>

</body>

</html>

更多请见:https://blog.csdn.net/qq_44638460/article/details/104233596

jsp

0 人点赞