因为自身做项目要用到,所以收集了一下大概有三种,目前使用 实现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<String, Object> loginInfoMap = new HashMap<>();
loginInfoMap.put(\"usrName\", \"123456\");
loginIsSuccess(loginInfoMap, loginSendInfo.getUrl());
System.out.println(\"----loginIsSuccess方法执行----\\n\" + (success ? \"登录成功\" : \"登录失败\"));
System.out.println(\"MyApplicationRunnerImpl-run方法执行完毕\");
}
}
来源:https://www.cnblogs.com/m13002622490/p/16055168.html
本站部分图文来源于网络,如有侵权请联系删除。