私はSpring Frameworkについて学んでいますが、正確には@Configuration
の注釈の意味と注釈を付けるべきクラスを理解できません。 Springブートのドキュメントでは、Applicationクラスは@Configuration
クラスでなければならないと言われています。なぜSpring起動アプリケーションクラスに@Configurationアノテーションが必要なのですか?
スプリングブートはJavaベースの設定を優先します。 はXMLソースでSpringApplication.run()を呼び出すことができますが、一般的に は、主なソースが@Configurationクラスであることをお勧めします。学ぼうと
は
について@Configuration
私は@Configuration
を持つクラスをアノテートするクラスは、Bean定義のソースとして春のIoCコンテナで使用できることを示していることがわかります。
もしそうなら、このアプリケーションクラスはどのようにBean定義のソースですか?
@SpringBootApplication // same as @Configuration @EnableAutoConfiguration @ComponentScan
public class App
{
public static void main(String[] args) throws Exception {
SpringApplication.run(App.class, args);
}
}
私はかなりの春に関する他のほとんどの基本的な概念を理解しているが、私は@Configuration
の目的を理解することはできませんか、どのクラスが@Configuration
クラスすべきですか?誰かが助けてくれますか?ありがとう!!
迅速かつ明確な答えをありがとう。今はたくさんの意味があります。この場合、この注釈はオプションですか?実際、私はこの注釈がSpring Securityなどで少し乱用されているのを見ていますが、SecurityConfigクラスにはBeanがないのに@Configurationで注釈が付けられています。http://docs.spring.io/spring-security/site/ docs/3.2.x/guides/helloworld.html – varunkr
あなたはそうです。自動スキャンする必要がない限り、これはオプションです(私の更新された回答を参照)。これはSecurityConfigの場合です。自動スキャンする場合に備えて注釈を付けました。 –
@ArtemNovikovあなたのアプリケーションがフルスプリングブートアプリケーションであることをいつ、どのように検討/知ることができますか? – Jesse