SCWCD - Listeners de Sessão

Estou tendo dificuldade em diferenciar estes dois listeners --> HttpSessionAttibuteListener e HttpSessionBindingListener

Nos sites que procurei todos dão a mesma esplicação

:arrow: HttpSessionAttibuteListener- Saber quando um atributo foi adicionado, removido e substituído de uma sessão.

:arrow: HttpSessionAttibuteListener- Você tem uma classe atributo e quer que os objetos deste tipo sejam notificadod quando eles forem associados ou removidos de uma sessão.

Os dois conceitos são muito parecidos… Alguem pode me explicar melhor a diferença entre os dois ?

HttpSessionAttibuteListener recebe notificação de Todos os atributos, de qualquer tipo. Não interessa qual objeto foi adicionado ou removido… este listener é sempre notificado.

session.setAttribute("a"
session.setAttribute("b"
session.setAttribute("c"

Já o HttpSessionBindingListener vc implementa em uma classe sua que vc precisa coloca na session, para saber quando ela está sendo adicionada ou removida. Por exemplo um objeto UserInfo que vc pode colocar na session após o usuário ter feito login.
Neste caso vc teria algo como:

public class UserInfo implements HttpSessionBindingListener{
...

http://www.unix.org.ua/orelly/java-ent/jenut/ch05_08.htm

Com o exemplo acima toda vez que qualquer objeto da classe UserInfo for adicionado/removido na sessão, os métodos da interface implementados pela classe UserInfo serão chamados.

Diferente da SessionAttributeListener que vai ser chamado quando qualquer objeto for adicionado/removido da sessão (sendo o objeto um UserInfo ou não).

Entendeu?

ok

Como vcs estao estudando pra essa certificacao ? Vcs compraram o livro da k.sierra ou tem algum pdf ?