public class SomeObject implements HttpSessionBindingListener {
private Connection someDbConnection = null;
.... various bits of code ....
public void valueBound(HttpSessionBindingEvent event) {
// open the Connection
this.someDbConnection = ....
}
public void valueUnbound(HttpSessionBindingEvent event) {
// close the Connection
this.someDbConnection.close();
}
}
要将这个对象绑定到session中,我们只需要将它添加到session即可。如果一个放置到session中的对象实现了HttpSessionBindingListener接口类,那么sesssion会自动的为它创建一个监听者(listener),在绑定解除的时候通知它。
通过实现HttpSessionBindingListener,我们可以将我们的对象放在sesssion域中,并且可以管理它们的创建和撤销。