Springの構成でエラーなくIntelliJのアイデア、アセンブリオブジェクトは、自動配線できませんでした。
ブログアドレス: http://blog.csdn.net/u010334295/article/details/78076510
事例:私は <スパン IntelliJ idea 2017.2を使ってSSMアプリケーションを開発しています。 Junit Testのテストを行う際、Resourceアノテーションを介してDAOを組み立てる際にERRORエラーが発生しました( Could not autowire. no beans of "XXX" type found ). しかし、ユニットテストがうまくいったので、実際にオブジェクトがmybatis-springで正しくアセンブルされたと仮定して、気にしませんでした。
しかし、このエラーは後にServiceレイヤーでDAOオブジェクトをAutowiredで組み立てる際にも繰り返され、私の設定でないことを確認するためにspringとmybatisの設定項目をチェックした後に再び発生しました。それでもユニットテストはパスしました。しかし、OCDのプログラマとしては、1つのプロジェクトでこのERRORレベルのヒントが連続するのは絶対に許せないので、様々な原因を調査し始めたのです。
<スパン 百度を調べてみると、大牛は一貫してCtrl+C/Vを間違った方向に何度も何度も使い、「Naiveすぎる」と嘲笑していることがわかった。 だから私はまた、どのように強力な米国ウォレスを見に行くために外出したい、すべてのstackoverflowの国際的な友人もより多くのこの問題が発生しました上のチェック。後でその理由は、命名規約の設定項目で、春のXMLファイルを解析する際のアイデアは、静的チェックエラー補正機構のサポートがあまりにも良いされていることがわかった。だから、ERRORは、実際にあなたのアプリケーションに影響を与えません。
方法1(新規)。
DAOレイヤーに@Repositoryアノテーションを追加します。 これはSpring 2.0から追加された新しいアノテーションで、Springの開発を簡素化するためのものです。これはデータアクセス層のクラスをSpring Beanとして識別し、またアノテーションされたクラスが投げるアクセス例外をSpringアクセス例外型としてカプセル化するものです。しかし、まずSpring XML設定ファイルでBeanの自動スキャンを有効にする必要があります。 <context:component-scan base-package="... "/>すると、その中の Springbootでは、以下のように設定する必要はありません。 .
(コメント欄で、ここにメソッドを追加するようにとのご指摘をありがとうございました↑)
方法2(旧)。
アセンブリオブジェクトは、コンストラクタのメソッドで渡されます。 コンストラクタ・メソッドに @Autowired アノテーションを付けます。@SuppressWarnings("SpringJavaAutowiringInspection") というアノテーションを付けます。 Resourceアセンブリの警告も消えました。実はこれ、何かの記事でERRORの警告をWARNINGに下げるのと似ているんです。しかし、@SuppressWarningsを使う方が理にかなっているし、作業する側もそのアノテーションで何が起こっているのかが分かる。
これが解決策図です。
この質問は終了しました。
ブログアドレス: http://blog.csdn.net/u010334295/article/details/78076510
関連
-
List<Integer> 型をインスタンス化できません。
-
Map<String,Boolean> 型をインスタンス化できません。
-
Javaでエラーが発生しました。非静的フィールドへの静的な参照を作成できません。
-
mvn -v error: main class not found or couldn't be loaded org.codehaus.plexus.classworlds.launcher.
-
Error: missing `server' JVM at `C:\Program Files (x86)\Javajre1.8.0_151bin server╱jvm.dll'.
-
java.lang.UnsupportedOperationException 解決方法
-
java にリソースリークがある: 'input' が閉じられない Solution
-
無効なカラム名
-
svn: 接続から読み取ることができません。リモートホストが既存の接続を強制的に閉じました。
-
既に使用されているアドレス:JVM_Bind (ポート競合)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
アクセス制限です。タイプ 'BASE64Decoder' は API ではない (必要なライブラリ xxx の制限)
-
JAVAMail TLS配信の注意点
-
Java 文字クラスとメソッド
-
リクエストのエンティティが大きすぎる問題の解決
-
環境変数JAVA_HOME(値xxx)が有効なJVMのインストール先を指していません。
-
java にリソースリークがある: 'XXX' は決して閉じられない ソリューション
-
エラー コンストラクタ worker(int, String, float) は未定義です。
-
[Java] jdk1.7 trustAnchors パラメータは空であってはならない
-
トークンに関する構文エラー、代わりに AnnotationName が期待される 構文エラー
-
org.apache.tools.zip を使用した Zip 圧縮・解凍