teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

HttpServletRequest等のパラメータ私について追記

2020/01/05 06:15

投稿

nakasho_dev
nakasho_dev

スコア2655

answer CHANGED
@@ -1,3 +1,10 @@
1
1
  以下のサイトが参考になるかと思います。
2
2
  * [Spring FrameworkでDIする3つの方法](https://reasonable-code.com/spring-injection-method/)
3
- * [SpringでField InjectionよりConstructor Injectionが推奨される理由](http://pppurple.hatenablog.com/entry/2016/12/29/233141)
3
+ * [SpringでField InjectionよりConstructor Injectionが推奨される理由](http://pppurple.hatenablog.com/entry/2016/12/29/233141)
4
+
5
+ 【追記】
6
+ 私見ですがHttpServletRequest等をControllerで受け取るのはfunctionとすべきだと考えます。
7
+ BeanとしてDIするのはそのクラスの振る舞いに必要な依存性を注入するべきであって、
8
+ ユーザのリクエスト毎にControllerを生成してHttpServletRequest等を注入するのは違和感を覚えます。
9
+
10
+ 今回の質問でControllerのConstructor に指定して、セッションごとに処理を分けることができることを初めて知りました。リクエスト毎に毎回Controllerのインスタンスを生成するのは非効率な気もしますが、活用方法があるのかもしれません。