開発中のDIコンテナですが、サーブレット対応を入れてみました。他にも色々フィックス中ですが・・・
リクエストやらレスポンスやらを受け取るセッターメソッドやらコンストラクタがある場合にインジェクションもできますし、コンテナ内のインスタンスをリクエストやセッションにバインドできます。
他のDIコンテナではインスタンスのライフサイクルがリクエストやセッションも対応していたりしていますが、コンテキストにも対応させました。さらにそれぞれのライフサイクルの終了に合わせて、自動的に破棄処理も可能です。
例えばトランザクションをリクエストから取得するときに開始して、リクエストが終了するときにコミットするというような事が、特にフィルタ等がなくても可能です。
DIコンテナを使うケースってどうしてもJ2EEの世界になってしまうので、今後トランザクションのサポートやJDBCのサポートも欲しいところですが、Spring Framework同様に自前では実装を持つ気はありません。グローバルトランザクションの実装って恐ろしく大変なんで、多分JOTM辺りを使う事になりそうです。