您当前的位置: 首页 >  java晴天过后 spring

SpringBoot启动过程执行某个方法

java晴天过后 发布时间:2022-03-25 19:48:07 ,浏览量:9

因为自身做项目要用到,所以收集了一下大概有三种,目前使用 实现ApplicationRunner接口形式。


有一点小坑,因为我要调用的方法是要从配置文件中取值才行,但是这个实现ApplicationRunner接口形式 调用方法,会优先于从配置文件中取值,调用的时候会报空指针异常,所以目前只能将参数从run方法执行的时候就传进去才可以顺利执行。

  • 需要在类上加上component注解实例化到spring容器中

代码实现

import com.UdpRecieve.controller.LoginController;
import com.UdpRecieve.domain.LoginSendInfo;
import com.UdpRecieve.utils.MyHttpUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;

import java.util.HashMap;
import java.util.Map;

/**
 * 说明:启动运行
 * 作者:FH Admin
 * from:fhadmin.cn
 */
@Component
@Order(2)
public class MyApplicationRunnerImpl implements ApplicationRunner {

    @Autowired
    private LoginSendInfo loginSendInfo;

    @Override
    public void run(ApplicationArguments args) throws Exception {
        System.out.println("开始执行MyApplicationRunnerImpl-run方法");
        Map loginInfoMap = new HashMap();
        loginInfoMap.put("usrName", "123456");
	loginIsSuccess(loginInfoMap, loginSendInfo.getUrl());
        System.out.println("----loginIsSuccess方法执行----\n" + (success ? "登录成功" : "登录失败"));
        System.out.println("MyApplicationRunnerImpl-run方法执行完毕");
    }
}

关注
打赏
查看更多评论

java晴天过后

暂无认证

  • 9浏览

    0关注

    185博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录