package com.dy.pipIrrStatistics.listeners; /** * @Author: liurunyu * @Date: 2024/7/22 14:39 * @Description */ import com.dy.common.util.ConfigXml; import com.dy.common.webListener.ConfigListener; import org.jdom2.Document; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.context.event.ApplicationReadyEvent; import org.springframework.context.ApplicationListener; import org.springframework.lang.NonNull; import org.springframework.stereotype.Component; import java.net.URL; /** * 监听器,实现功能:在系统启动时初始化,向数据库中插入数据 * 本监听器不能采用ServletContextListener方式,因为Servlet上下文Context创建后 * Spring容器并没有创建完,而本类中用了Spring容器中的Bean,即*Dao 。 * 所以采用了Spring事件监听器来实现 */ @Component public class StatisticsMonthListener implements ApplicationListener { @Value("${auto-statistics.month.startDay: 1}") private Integer startDay ;//月统计开始日期 @Value("${auto-statistics.month.startHour: 0}") private Integer startHour ;//月统计开始小时 @Value("${auto-statistics.month.startMinute: 5}") private Integer startMinute ;//月统计开始分钟 /** * SpringBoot容器已经准备好了 * @param event 事件 */ @Override public void onApplicationEvent(@NonNull ApplicationReadyEvent event) { try { //等1秒,等待com.alibaba.druid.pool.DruidDataSource实始化完成 Thread.sleep(1000L); } catch (InterruptedException e) { e.printStackTrace(); }finally { this.start(event); } } /** * 实始化 */ private void start(ApplicationReadyEvent event){ } }