spring-boot開啟非同步執行緒
阿新 • • 發佈:2019-01-07
spring-boot開啟非同步執行緒
開啟非同步 方式1
@SpringBootApplication
@EnableAsync
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
@Component
public class AsyncTaskRequest {
@Async
public void doSomething() {
return ;
}
}
非同步任務 方式2
這種方式,是springBoot自身的一種非同步方式,使用註解實現,非常方便,我們在想要非同步執行的方法上加上@Async註解,在controller上加上@EnableAsync,即可。注意,這裡的非同步方法,只能在自身之外呼叫,在本類呼叫是無效的。
controller
@RestController
@RequestMapping("tmall")
@EnableAsync
public class LoginController {
private final org.slf4j.Logger logger =
LoggerFactory.getLogger(getClass());
@Autowired
private LoginService loginService;
/**
* 非同步處理2:使用springBoot自帶async註解
*/
@RequestMapping(value = "test1",method = RequestMethod.GET)
public String test1(){
loginService. getTest1();
logger.info("============>"+Thread.currentThread().getName());
return "非同步,正在解析......";
}
}
參考連結
1.Spring Boot—(4)SpringBoot非同步處理任務
2. ScheduledExecutorService定時週期執行指定的任務
感謝閱讀~