ドキュメントを読むと、どちらも同じようです。次に、これら2つの違いは何ですか?どのシナリオでどちらを使用するかなどの例を使用して、2 つの違いを説明してください。
よろしく、
ドキュメントを読むと、どちらも同じようです。次に、これら2つの違いは何ですか?どのシナリオでどちらを使用するかなどの例を使用して、2 つの違いを説明してください。
よろしく、
1 つ目は、セッションに対する一般的なリスナーです。あらゆる種類の属性がセッションに追加またはセッションから削除されるたびに呼び出されます。セッション属性の追加/削除を通知したい場合に使用します。
2 つ目は、特定のクラスによって実装できるコールバック インターフェイスです。コールバック メソッドは、このオブジェクトがセッションとの間でバインド/バインド解除されるときに、このインターフェイスを実装するオブジェクトで呼び出されます。セッションへの追加/セッションからの削除をオブジェクトに通知する場合に使用します。
HttpSessionBindingListener:
オブジェクトが を実装HttpSessionBindingListener
している場合、セッションにバインドされたとき、またはセッションからバインド解除されたときに通知されます。例えば、
MyObject implements HttpSessionBindingListener
{
// class definition
}
私が電話したら
session.setAttribute ("Object", MyObject)
メソッドvalueBound
および/またはvalueUnbound
( で定義されHttpSessionBindingListener
、 で実装されてMyObject
いるものが呼び出されます) 実装はHttpSessionBindingListener
、それを実装するオブジェクトに対してのみ機能します。
HttpSessionAttributeListener
: いずれかのクラスがHttpSessionAttributeListener
インターフェイスを実装すると、セッションの属性リストに変更が発生したときに通知されます。例えば
MyClass implements HttpSessionAttributeListener
{
// implementations of methods
}
session.setAttribute ("anything", AnyObjectNotOnlyMyClass);
属性のリストの変更を示しますHttpSessionAttributeListener
。実装は、追加、削除、または置換された属性をリッスンします。