トップページ > プログラム > 2016年10月31日 > sJgNRili

書き込み順位&時間帯一覧

13 位/143 ID中時間01234567891011121314151617181920212223Total
書き込み数0010000000001000000001003



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
909
Java入門・初心者質問スレ [無断転載禁止]©2ch.net

書き込みレス一覧

Java入門・初心者質問スレ [無断転載禁止]©2ch.net
909 :デフォルトの名無しさん[sage]:2016/10/31(月) 02:15:35.73 ID:sJgNRili
MVCのWebアプリについて教えて下さい。
リクエスト毎にインスタンスを生成するControllerクラスがあります。
ControllerクラスにServiceクラスをインスタンス変数として、DIコンテナでインジェクトします。
この際に、DIのライフサイクルをシングルトンにします。

1回目のリクエストのControllerクラスでは indexメソッド内でserviceのメソッドがメソッド内で呼ばれるとします。
2回目にリクエストでもController.indexメソッドが呼ばれます。
この時、serviceクラスはnullでしょうか?
それとも1回目のControllerクラスでDIしたインスタンスが2回目も使われるのでしょうか?
Java入門・初心者質問スレ [無断転載禁止]©2ch.net
915 :909[sage]:2016/10/31(月) 12:01:32.93 ID:sJgNRili
>>911
ありがとうございます。もう1つ質問させてください。
ではServletとDIコンテナを併用して使う場合のケースです。
サーブレットクラスのインスタンス変数にserviceクラスを持つとします。
通常だとServletはシングルトンなのでクラスのインスタンス変数はスレッドセーフではないですが、
DIコンテナの設定をリクエスト毎にした場合は、
1回目、2回目、3回目・・・と
アクセスされるたび、serviceにインスタンスがDIされますか?
それとも呼び出し元のクラスが新たにインスタンス生成されないので同じインスタンスが共有されますか?
Java入門・初心者質問スレ [無断転載禁止]©2ch.net
918 :デフォルトの名無しさん[]:2016/10/31(月) 21:34:08.02 ID:sJgNRili
>>917
どういうことですか?


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。