java web启动后执行初始化任务

写一个类继承ApplicationListener,可以直接引用下述代码,然后调用相应的方法。

package com.linewell.system;

import com.linewell.cache.ApplicationData;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.stereotype.Component;

@Component
public class InitializationProcessor implements ApplicationListener<ContextRefreshedEvent> {

    @Override
    public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {
        if (contextRefreshedEvent.getApplicationContext().getParent() == null) {
            System.out.println("run onApplicationEvent method");
            //dosomething
        }
    }
}

原文地址:https://www.cnblogs.com/chenmz1995/p/10204407.html

时间: 2024-10-04 16:01:05

java web启动后执行初始化任务的相关文章

spring boot 配置启动后执行sql, 中文乱码

spring.datasource.schema指定启动后执行的sql文件位置. 我发现中文乱码,原因是没有指定执行sql script encoding: spring: datasource: url: "jdbc:h2:mem:test" username: "sa" password: "" schema: database/import.sql sql-script-encoding: utf-8 type: com.alibaba.d

hadoop 启动后执行wordcount解析(No such file or directory错误)

hadoop 启动后执行wordcount解析 第一个  hadoop fs -mkdir input 结果出现了错误No such file or directory 查资料,应该是 执行命令为:hadoop fs -mkdir /input 1.x是可以执行的,而2.x的执行命令为:hadoop fs -mkdir /

Jenkins新建节点,启动方式没有“通过Java Web启动代理”选项怎么办?

在Jenkins中,打开“系统管理”→“管理节点”→“新建节点”页面时,“启动方式”选项没有“通过Java Web启动代理”,怎么办? 打开“系统管理”,进入“全局安全配置”页面. 1. “JNLP代理协议的TCP端口” 配置成 “随机选取”,点开“代理协议...”,勾选“Java Web Start Agent Protocol/4(TLS加密)”. 2. 找到“隐藏的安全警告”,将“Enable Agent → Master Access Control”的复选框打勾. 3. 保存配置,重新

spring在web容器启动时执行初始化方法

需求:在tomcat启动时开启一个定时任务. 想法:容器启动时执行方法,最容易想到的就是servlet中可以配置load-on-startup,设置一个正整数也就可以随容器一起启动. 问题:上面的方法很好,但是由于定时任务需要去操作数据库,而项目采用了spring的依赖注入来管理对象,而servlet并不受Spring的管理.若此时在servlet中注入Spring管理的对象,则会报错:javax.naming.NameNotFoundException: Name com.test.InitS

SpringBoot程序启动时执行初始化代码

因项目集成了Redis缓存部分数据,需要在程序启动时将数据加载到Redis中,即初始化数据到Redis. 在SpringBoot项目下,即在容器初始化完毕后执行我们自己的初始化代码. 第一步:创建实现ApplicationListener接口的类 package com.stone; import com.stone.service.IPermissionService; import org.springframework.context.ApplicationListener; import

HttpURLConnection在main函数中和tomcat启动后执行的区别

当有一个HttpURLConnection请求类时, 在用main函数调用能狗返回值,但是tomcat启动后,程序调用又返回值为空,如下: 如上图,在不知道别人方法怎么处理的情况下,我门的参数应该完全模拟前端 试一下如下方式 给中文参数加上URLEncoder.

容器启动后执行和执行数据库脚本

1 package com.jt.mongo.demo.modules.init; 2 3 import org.slf4j.Logger; 4 import org.slf4j.LoggerFactory; 5 import org.springframework.context.ApplicationListener; 6 import org.springframework.context.event.ContextRefreshedEvent; 7 import org.springfr

java web每天定时执行任务

第一步: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 package com.eh.util; import java.util.Calendar; import java.util.Date; import java.util.Timer; /**  * java定时任务

Spring启动后执行

方法一: 实现BeanPostProcessor接口: [java] view plaincopy public class InstantiationTracingBeanPostProcessor implements BeanPostProcessor { public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException { return bean; } pub