0
点赞
收藏
分享

微信扫一扫

JavaWeb:Session的使用

船长_Kevin 2024-09-12 阅读 27
  • flag为 true:服务器查看客户端请求中是否有sessionId,如果没有,则创建一个session对象,返回该对象的引用。如果有,要查看对应的session对象是否存在,如果存在,则返回该对象的引用,若不存在,则创建一个session对象

  • flag为 false:服务器查看请求中是否有sessionId, 如果没有,返回null。如果有,要查看对应的session对象是否存在,如果存在,则返回该对象的引用,若不存在,返回null

  • getSession()中没有参数等价于getSession(true)

示例:

HttpSesssion sess1 = request.getSession();

HttpSesssion sess2 = request.getSession(false);

注意:jsp页面默认情况下,它是<%@ page session=“true”%>的,即默认情况下,访问jsp,一定会得到session对象。

常用方法

===============================================================

String session.getId()

获取SessionId

session.setAttribute(String name,Object obj);

绑定某个对象

Object session.getAttribute(String name)

显示某个用户的访问次数,如果找不到返回null

session.setMaxInActiveInterval(int seconds)

设置最大不活动时间

设置默认超时限制

===================================================================

针对整个服务器或者某个特定的应用设置超时限制:

web.xml

<session-config>

<session-timeout>30</session-timeout>

</session-config>

Session验证

====================================================================

登录成功以后,向session中写入数据: session.setAttribute(数据);

在需要受保护的页面添加如下代码:

session.getAttribute(数据);

如果为空,说明用户登录失败,不能访问,一般会重定向到登录页面。

<%@include file=""%>

jsp引擎在将.jsp文件转换成.java文件时,将对应的文件的内容插入到指令所在的位置。

验证码

==============================================================

使用Servlet生成图片

使用java.awt.*的相应类生成一个图像 image= ;

压缩图像成jpg格式:

response.setContentType("image/jpeg");

输出:

OutputStream out = response.getOutputStream();

(2)比较session中存放的checkcode与客户端传送给来的checkcode

用户禁止cookie,如何实现sessionId的跟踪

======================================================================================

用户禁止cookie,还可以使用session机制:可以使用URL重写机制来解决。

(1)什么是URL重写:通过修改URL地址,在其后添加sessionId,来实现sessionId的跟踪。

(2)URL重写注意事项:即在访问某个需要session机制支持的组件时,不要直接在浏览器地址栏输入地址,而通过服务器生成的URL地址来访问。

(3)方法

举报

相关推荐

0 条评论