SpringフレームワークとDI(依存性注入)について勉強したいと思っています。
DI(依存性注入)にはコンストラクタ・インジェクションとセッター・インジェクションがあると聞いたのですが
具体的にどう違うのですか?

回答2件
あなたの回答
tips
プレビュー
Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。
このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。
Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。
Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。
このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。
Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。
0グッド
0クリップ
投稿2014/08/12 10:21
SpringフレームワークとDI(依存性注入)について勉強したいと思っています。
DI(依存性注入)にはコンストラクタ・インジェクションとセッター・インジェクションがあると聞いたのですが
具体的にどう違うのですか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
インスタンスに値を設定する際に、
投稿2014/08/14 17:00
総合スコア198
0
インスタンスへの参照の設定方法で、以下のような違いがあります。
◆コンストラクタ・インジェクション
コンストラクタ経由で依存性注入を行う方法です。
Springのbean定義ファイルに<constructor-arg>タグを使って定義します。
クラス例
public class Foo { private String bar; public Foo(String bar){ this.bar = bar; } }
bean定義ファイル例
<bean id="foo" class="com.myapp.Foo"> <constructor-arg> <value>test<value/> </constructor-arg> </bean>
◆セッター・インジェクション
setterメソッド経由で依存性注入を行う方法です。
Springのbean定義ファイルに<property>タグを使って定義します。
クラス例
public class Foo { private String bar; public setFoo(String bar){ this.bar = bar; } }
bean定義ファイル例
<bean id="foo" class="com.myapp.Foo"> <property name="bar" value="test" /> </bean>
投稿2014/08/13 07:30
総合スコア284
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2014/08/20 00:35