Profile上的Spring组件初始化无效

时间:2018-02-22 19:36:02

标签: spring spring-boot spring-bean

我有以下类,只有当活动配置文件不是主配置文件时才应该初始化它。但即使活动配置文件是主设备,它也会被执行。怎么实现这个?我正在使用Spring boot和Spring 4.

@Component
@Scope(value= "singleton")
@Profile("!master")
public final class SystemStartUp implements ApplicationListener<ContextRefreshedEvent>, Ordered {
}

2 个答案:

答案 0 :(得分:1)

{p {3}} @Profile There's no supportApplicationListener@EventListener @Profile主要与@Configuration结合使用。

当Spring看到一个实现ApplicationListener接口的类时,它会自动注册监听器。

如果您想在启动系统时执行某些基于条件的操作,则可能需要探索不同的方法。

答案 1 :(得分:1)

我以编程方式实现了解决方案。

   page = requests.get('http://www.poetsgate.com/ViewPoem.aspx?id=12343')
   tree = html.fromstring(page.content)
   text1 = tree.xpath('//div[@class="col1 first"]/text()')
   text2 = tree.xpath('//div[@class="col2 second"]/text()')