Java WebSocket HttpSession与WebSocket Session的关联

时间:2023-03-09 14:56:15
Java WebSocket HttpSession与WebSocket Session的关联

  当HttpSession中止(通过显示地失效或超时)时,Web容器会把HttpSession属性从HttpSession中清除。

  javax.servlet.http.HttpSessionBindingListener接口定义如下:

 public interface HttpSessionBindingListener {
public void valueUnbound(HttpSessionBindingEvent hsbe);
public void valueBound(HttpSessionBindingEvent hsbe);
}

  页面打开时即通过打开事件访问服务器端点时把实现了HttpSessionBindingListener接口的对象添加到属性中后,在HttpSession失效时,通过该方法就能通知WebSocket端点实例,给了一个关闭WebSocket连接的机会,保证了HttpSession和WebSocket Session之间的强关联性。

  参考资料

  《Java WebSocket编程》 P224-225