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);
上一篇:袁创:使用反射动态调用ActiveX控件


下一篇:Ambari集群移动现有复制到另外地方或更改ip地址,导致各项服务组件上为黄色问号代表心跳丢失的解决方案(图文详解)(博主推荐)