0

これは以前に提起されたものであり、これは初歩的な質問であることは知っていますが、これを修正する方法がわかりません。アプリの起動時に、解決できない循環参照エラーが発生します。以下の構造。何が問題で、どうすれば修正できますか?

@Controller("AAA")
public class AAAImpl implements AAA {

    private final BBB BBB; //this is constructor injected

}

@Service
public class BBBImpl implements BBB {

    @Autowired
    CCC CCC;

}

@Service ( "CCC" )
public class CCCImpl extends AbstractQueryService<FinalSeminar, Long> implements CCC {

    @Resource
    AAA AAA;

}
4

1 に答える 1

1

1) 他のコンポーネントにコントローラーを挿入する必要はありません。HTTP リクエストの処理にのみ使用してください。ビジネス ロジックを含めないでください。サービス層またはマネージャー層に記述できます。

2)循環参照の例外が発生する理由は、クラス AAAAmpl が BBBImpl への依存関係を含んでいるためです。BBBImpl は、最終的に AAA に依存する CCCImpl に依存しています。そのため、Spring はこれらの Bean を作成できません。

于 2013-05-24T04:54:05.763 に答える