前段时间做了个小东西, 用的struts,感觉自己使用JSP还可以, 可是这两天看<Head First JSP>,看到一半就不行了--太惭愧了... 很多JSP的基本知识都是一知半解,还有很多功能闻所未闻,看来大二时候的动态网页设计课程是白学了...下面是读书笔记,记下来之后就把之前的项目给重构了!
说到Listener , 我只知道可以在DD中配置一系列的Listener , 当某个事件被触发时, 会调用对应Listener中的特定方法,但是, Servlet 监听类型之多...让我始料不及:
- HttpSessionAttributeListener
- HttpSessionBindingListener
- HttpSessionListener
- HttpSessionActivationListener
- ServletRequestListener
- ServletRequestAttributeListener
- ServletContextAttributeListener
- ServletContextListener
他们可以监听的事务范围很广,从向request或session添加一个属性,到会话迁移到另一个JVM....,这样看来的话,任何动作都可以是容器可知的..最强的是,如果一个对象实现了HttpSessionBindiingListener接口,就可获知自己何时被添加到一个req或session , 从而在可以指定它在会话中的动作(valueBound())和从会话中删除后的动作(valueUnbound())
具体各个监听器的用法就不详细写了..等用到了再补上去.
要说明的是, 学习了监听器这一节之后,我对DD 中的Filter倒是有点迷糊了...只知道Filter就像一个装饰器,对请求进行一些数据或格式封装,然后向下转发..继续探索中..