【Head First Servlets and JSP】笔记8:监听者
2024-10-21 19:41:14
1、你不用了解所有监听者API,并不多,一共有8个。不过,你需要知道你能监听什么,以便在需要的时候可以查。
2、关于Session和Cookie。参见JavaWeb学习总结(十二)——Session by 孤傲苍狼
3、HttpSessionBindingListener
这是一个非常有用的监听者,为什么说它有用呢?因为它可以协助我们同步实际对象和数据库的信息。例如:
package com.example; import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionBindingListener; public class Dog implements HttpSessionBindingListener {
private String breed; public Dog(String breed) {
this.breed = breed;
} public String getBreed() {
return breed;
} @Override
public void valueBound(HttpSessionBindingEvent httpSessionBindingEvent) {
// 如果我被增加到某个session就执行这段代码
} @Override
public void valueUnbound(HttpSessionBindingEvent httpSessionBindingEvent) {
// 如果我从某个session移除,就执行这段代码
}
}
我们的实际数据通常是存储在数据库中的,因此,我们一般需要使用数据库信息来填充Dog对象的字段,但是问题是,我们怎么保持数据库记录和Dog对象的信息同步?另外,什么时候让它们同步?
很显然,我们“要用对象”和“不用对象”的时刻(在这之间,对象可能发生改变)就是我们同步的时刻,我们如何知道对象什么时候被用or不用?这就需要一个监听者——HttpSessionBindingListener。
最新文章
- 游戏编程系列[1]--游戏编程中RPC协议的使用
- Java -- File
- NHibernate系列文章一:NHibernate介绍
- memset与malloc性能测试
- java笔记--适配器模式的运用
- linux下用core和gdb查询出现";段错误";的地方【转】
- Readhat Linux5.5 安装SVNService(经验总结)
- A Tour of Go For is Go's ";while";
- [NOIP1999提高] CODEVS 1047 邮票面值设计(dfs+dp)
- Friendship of Frog(水题)
- Android:自己定义PopupMenu的样式(显示图标/设置RadioButton图标)
- [51nod1457]小K vs. 竹子
- ognl版本错误
- shell 基础(二)变量
- Ubuntu查看crontab运行日志
- Nginx 多核cpu负载均衡
- Codeforces Round #552 (Div. 3) A题
- QT插件+ROS 2 新建项目
- 洛谷P1403 约数研究【思维】
- Java用Jackson遍历json所有节点
热门文章
- 下载 Microsoft SQL Server JDBC 驱动程序
- solr-in-action-ch4-Configuring Solr
- 使用Salt-ssh部署Salt-minion之源码安装(二)
- window linux IPC ftok BY_HANDLE_FILE_INFORMATION
- WPF-Binding对数据的检验
- 拍照权限,GPS权限的控制
- Mongo同步数据到Elasticsearch
- CodeIgniter框架——访问方式 URI 分配变量 数据库操作
- 【BZOJ4849】[Neerc2016]Mole Tunnels 模拟费用流
- Git is fundamentally a content-addressable filesystem with a VCS user interface written on top of it