この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 16064|答える: 2

[出典] リスナーに@Autowiredを注入できない

[リンクをコピー]
掲載地 2019/04/04 15:23:22 | | | |
最近、リスナーを使っていたときにspringを注入できない問題に直面しました。コードは以下の通りで、このタスクは常にnullで、パッケージは明らかにスイープされてしまいましたが、注入できません。

理由は以下の通りです。リスナーリスナーはSpringコンテナの@Resourceや@Autowired注釈メソッドを使ってビーンを注入できません。なぜなら、ウェブサーバーコンテナでは、Servlet、Filter、ListenerはいずれもSpringコンテナで管理されていませんしたがって、これらのクラスでSpringの注釈メソッドを直接使って必要なオブジェクトを注入することはできません。 ここでは、サーブレットのライフサイクル全体がサーブレットコンテナによって処理されます。 もしそれをSpringコンテナに入れて作成すれば、Springコンテナがサーブレットオブジェクトを作成できますが、サーブレットコンテナは自分のコンテナに存在しないため、存在を認識しない可能性があります。 したがって、サーブレットはSpringではなくウェブサーバーによって管理されます。

以下の修正を加えてください:

春の文脈から考えると、問題は完璧に解決されました。


Springboot @Autowiredは問題を注入できません
https://www.itsvse.com/thread-6397-1-1.html
(出典:Architect_Programmer)






先の:Bootstrap4を使った要素の表示と隠し方
次に:Java annotations@PostConstructと詳細な説明、@PreDestroy例
 地主| 掲載地 2019/04/04 15:54:53 |
エンティティリスナーを@Componentに設定しても、JPAは実際にはクラスのインスタンスのみを使っており、Spring管理のビーンではありません。 だからNullPointerExceptionが発生します。 アカウント履歴リポジトリは常に空のままです。

https://stackoverflow.com/questi ... n-using-postpersist

ステートレスビーンズに依存関係を注入するハックは、依存関係を「静的」として定義し、Springが依存関係を注入(静的依存に割り当てる)セッターメソッドを作成することです。

依存関係を静的として宣言してください。



Springが注入できるメソッドを作成してください。



リソース:https://stackoverflow.com/questi ... -jpa-entitylistener
 地主| 掲載地 2019/04/04 16:03:23 |
私の解決策は以下の通りです:


リソース:ハイパーリンクのログインが見えます。
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com