SpringMVC 异步与定时使用示例

1.Spring 的xml配置:

<aop:aspectj-autoproxy/>
<task:annotation-driven executor="annotationExecutor" scheduler="scheduler"/>
<!-- 支持 @Async 注解 -->
<task:executor id="annotationExecutor" pool-size="20"/>
<!--配置线程池-->
<task:scheduler id="scheduler" pool-size="10" />

2.定义异步同步方法:

package com.leibao.http.async;
/**
 * User: 
 * Date: 13:48 2017/12/13
 * Email: 
 */
@Service
public class IdCardAuthAsync {
    @Autowired
    private ReportModelAuthInfoService reportModelAuthInfoService;
    @Autowired
    private ReportService reportService;
    private final static Logger logger = LoggerFactory.getLogger(IdCardAuthAsync.class);
    @Async
    public void getIdcardAuthDeal(Map map,User user,Report report) {
        logger.info("身份证认证开始");
    }
   @Scheduled(cron = "0/10 * * * * ? ")
    public void checkEmailByUndetected() {
        System.out.println("定时检测!!");
    }
}

3.异步的使用:

[1]封装实例:

@Autowired
private IdCardAuthAsync idCardAuthAsync;

[2].调用:

idCardAuthAsync.getIdcardAuthDeal(map,updateUser,report);

 

posted @ 2019-04-04 09:03  全栈九九六  阅读(795)  评论(0编辑  收藏  举报