厚街网站仿做网站建设数据库类型
2026/3/24 13:27:46 网站建设 项目流程
厚街网站仿做,网站建设数据库类型,免费 片,做网站源码要给客户嘛目录HttpSession概述原理图应用场景HttpSession的使用getSession方法的处理逻辑HttpSession的时效性为什么要设置session的时效HttpSession概述 HttpSession是一种保留更多信息在服务端的一种技术#xff0c;服务器会为每一个客户端开辟一块内存空间#xff0c;即session对象…目录HttpSession概述原理图应用场景HttpSession的使用getSession方法的处理逻辑HttpSession的时效性为什么要设置session的时效HttpSession概述HttpSession是一种保留更多信息在服务端的一种技术服务器会为每一个客户端开辟一块内存空间即session对象客户端在发送请求时都可以使用自己的session这样服务端就可以通过session来记录某个客户端的状态了服务端在为客户端创建session时会同时将session对象的id即JSESSIONID以cookie的形式放入响应对象后端创建完session后客户端会收到一个特殊的cookie叫做JSESSIONID客户端下一次请求时携带JSESSIONID后端收到后根据JSESSION找到对应的session对象通过该机制服务端通过session就可以存储一些专门针对某个客户端的信息了session也是域对象原理图应用场景记录用户的登录状态用户登录后将用户的账号等敏感信息存入session记录用户操作的历史例如记录用户的访问痕迹用户的购物车信息等临时性的信息HttpSession的使用getSession方法的处理逻辑创建servlet1packagecom.baidu.servlet;importjakarta.servlet.ServletException;importjakarta.servlet.annotation.WebServlet;importjakarta.servlet.http.HttpServlet;importjakarta.servlet.http.HttpServletRequest;importjakarta.servlet.http.HttpServletResponse;importjakarta.servlet.http.HttpSession;importjava.io.IOException;WebServlet(/servlet1)publicclassServlet1extendsHttpServlet{protectedvoidservice(HttpServletRequestreq,HttpServletResponseresp)throwsServletException,IOException{// 接收请求中username参数Stringusernamereq.getParameter(username);// 获得session对象HttpSessionsessionreq.getSession();// 先判断请求中有没有一个特殊的cookie key就是JSESSIONID// 如果有// 根据JSESSIONID去找对应的SESSION对象// 找到了// 返回之前的session// 没找到// 创建一个新的session返回并且向response对象中存放一个JSESSION的cookie// 如果没有// 该方法会创建一个新的session返回并且向response对象中存放一个JSESSIONID的cookieSystem.out.println(session.getId());System.out.println(session.isNew());session.setAttribute(username,username);// 客户端响应信息resp.setContentType(text/html;charsetUTF-8);resp.getWriter().write(成功);}}编写servlet2HttpSession的时效性为什么要设置session的时效用户量很大之后session对象相应的也要创建很多如果一味创建不释放那么服务器端的内存迟早要被耗尽客户端关闭行为无法被服务端直接侦测或者客户端较长时间不操作也经常出现类似这种情况就需要对sesion的时限进行设置了默认的session最大闲置时间两次使用同一个session中的间隔时间在tomcat/conf/web.xml中配置为30分钟我们也可以自己在当前项目的web.xml对最大闲置时间进行重新设定设置完后重新启动Tomcat也可以通过HttpSession的API对最大闲置时间进行设定// 单位是秒session.setMaxInactiveInterval(60);也可以直接让session失效session.invalidate();

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询