我正在尝试创建一个使用spring的java库。但是我找不到任何资源来演示如何设置组件扫描并在没有应用程序的主入口点时加载所有bean。
n3ipq98p1#
spring常用的方法是定义 @EnableXXXX 并让库的客户机通过在其配置类中注解来启用它。比如:
@EnableXXXX
@Target(ElementType.TYPE)@Import(FooLibarayConfiguration.class)@Documentedpublic @interface EnableFooLibaray{}
@Target(ElementType.TYPE)
@Import(FooLibarayConfiguration.class)
@Documented
public @interface EnableFooLibaray{
}
@ComponentScan("xxxxx")@Configurationpublic class FooLibarayConfiguration{}
@ComponentScan("xxxxx")
@Configuration
public class FooLibarayConfiguration{
客户端通过以下方式启用库:
@EnableFooLibaray@Configurationpublic class Application{}
@EnableFooLibaray
public class Application{
这个 @Import 实际上,它支持一种更动态的方式来包含库的bean设置。您可以参考许多现有的 @EnableXXX 由Spring提供,如 @EnableAsync , @EnableWebSecurity , @EnableTransactionManagement , @EnableCaching 例如。
@Import
@EnableXXX
@EnableAsync
@EnableWebSecurity
@EnableTransactionManagement
@EnableCaching
1条答案
按热度按时间n3ipq98p1#
spring常用的方法是定义
@EnableXXXX
并让库的客户机通过在其配置类中注解来启用它。比如:客户端通过以下方式启用库:
这个
@Import
实际上,它支持一种更动态的方式来包含库的bean设置。您可以参考许多现有的@EnableXXX
由Spring提供,如@EnableAsync
,@EnableWebSecurity
,@EnableTransactionManagement
,@EnableCaching
例如。