DIとType - (2005/09/07 (水) 12:03:39) の1つ前との変更点
追加された行は緑色になります。
削除された行は赤色になります。
<table style="width: 422px; height: 214px;" border="1">
<tbody>
<tr>
<th>名称<br></th>
<th>サポートするDIタイプ<br></th>
<th>備考<br></th>
</tr>
<tr>
<td>Spring<br></td>
<td>Type2およびType3<br></td>
<td>J2EE用のフレームワーク</td>
</tr>
<tr>
<td>PicoCountainer<br></td>
<td>Type2およびType3</td>
<td>DIコンテナ<br></td>
</tr>
<tr>
<td style="vertical-align: top;">WebWork2<br></td>
<td style="vertical-align: top;">Type2<br></td>
<td style="vertical-align: top;">
Web用のフレームワークとDIコンテナを提供する<br></td>
</tr>
<tr>
<td style="vertical-align: top;">Seasar2<br></td>
<td style="vertical-align: top;">Type2,3<br></td>
<td style="vertical-align: top;">
国産のアプリケーションサーバ<br></td>
</tr>
</tbody>
</table>
<br>
これらDIコンテナに共通する主題は依存を注入することによってシステム内に存在するオブジェクト同士の結合度をゆるくすることであり、そのための仕組み。<br>
<br>
DIコンテナは依存性を注入する仕組みによって3つのタイプ(Type)に分けられる。<br>
<br>
<span style="color: rgb(51, 204, 0);">Type2(Setter Injection)</span><br>
<span style="color: rgb(255, 153, 0);">特徴</span><br>
オブジェクト間の関連がXMLファイルに記述されDIコンテナがオブジェクトのSetterメソッドを利用して参照するobjを設定すること<br>
<br>
<span style="color: rgb(255, 153, 0);">point<br>
<span style=
"color: rgb(0, 0, 0);">SetterメソッドをもっているPOJOであればType2のDIコンテナ用に作られたAppでなくても簡単にDIコンテナに管理をまかせることができるようになるということ<br>
<br>
<span style="color: rgb(0, 102, 0);"><span style=
"color: rgb(51, 204, 0);">Type3(Constructor Injection)</span><br>
<span style="color: rgb(255, 153, 0);">特徴<br>
<span style=
"color: rgb(0, 0, 0);">DIコンテナがObjのコンストラクタのパラメータとして参照するObjを設定すること。<br>
参照するObj、参照されるObjは開発者が作成し、コンテナは関連付けだけを依頼すること<br>
<br>
XMLにかくわけじゃないので理解しやすい。<br>
反面、DatasourceのようにRDBによって異なるObjの関連がほしい場合の柔軟性に書ける。<br>
<br>
Type1(Interface Injection)<br></span></span></span><br></span></span>
<table style="width: 422px; height: 214px;" border="1">
<tbody>
<tr>
<th>名称<br></th>
<th>サポートするDIタイプ<br></th>
<th>備考<br></th>
</tr>
<tr>
<td>Spring<br></td>
<td>Type2およびType3<br></td>
<td>J2EE用のフレームワーク</td>
</tr>
<tr>
<td>PicoCountainer<br></td>
<td>Type2およびType3</td>
<td>DIコンテナ<br></td>
</tr>
<tr>
<td style="vertical-align: top;">WebWork2<br></td>
<td style="vertical-align: top;">Type2<br></td>
<td style="vertical-align: top;">
Web用のフレームワークとDIコンテナを提供する<br></td>
</tr>
<tr>
<td style="vertical-align: top;">Seasar2<br></td>
<td style="vertical-align: top;">Type2,3<br></td>
<td style="vertical-align: top;">
国産のアプリケーションサーバ<br></td>
</tr>
</tbody>
</table>
<br>
これらDIコンテナに共通する主題は依存を注入することによってシステム内に存在するオブジェクト同士の結合度をゆるくすることであり、そのための仕組み。<br>
<br>
DIコンテナは依存性を注入する仕組みによって3つのタイプ(Type)に分けられる。<br>
<br>
<span style="color: rgb(51, 204, 0);">Type2(Setter Injection)</span><br>
<span style="color: rgb(255, 153, 0);">特徴</span><br>
オブジェクト間の関連がXMLファイルに記述されDIコンテナがオブジェクトのSetterメソッドを利用して参照するobjを設定すること<br>
<br>
<span style="color: rgb(255, 153, 0);">point<br>
<span style=
"color: rgb(0, 0, 0);">SetterメソッドをもっているPOJOであればType2のDIコンテナ用に作られたAppでなくても簡単にDIコンテナに管理をまかせることができるようになるということ<br>
<br>
<span style="color: rgb(0, 102, 0);"><span style=
"color: rgb(51, 204, 0);">Type3(Constructor Injection)</span><br>
<span style="color: rgb(255, 153, 0);">特徴<br>
<span style=
"color: rgb(0, 0, 0);">DIコンテナがObjのコンストラクタのパラメータとして参照するObjを設定すること。<br>
参照するObj、参照されるObjは開発者が作成し、コンテナは関連付けだけを依頼すること<br>
<br>
XMLにかくわけじゃないので理解しやすい。<br>
反面、DatasourceのようにRDBによって異なるObjの関連がほしい場合の柔軟性に欠ける。<br>
<br>
<span style="color: rgb(51, 204, 0);">Type1(Interface
Injection)</span><br></span></span></span><span style=
"color: rgb(255, 102, 0);">特徴<br>
<span style=
"color: rgb(0, 0, 0);">インターフェースを実装することにより、その抽象メソッドのパラメータとして渡されたServiceManagerを利用しobjを取得する。<br>
<br>
<br></span></span></span></span>
表示オプション
横に並べて表示:
変化行の前後のみ表示: