文章中使用到的发送邮件代码就不写了,之前发布过--https://blog.csdn.net/yan95520/article/details/89366606
1.在pom.xml中导入jar包(maven工程)
<!-- 计划任务支持 -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
<exclusions>
<exclusion>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Excel支持 -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.13</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.13</version>
</dependency>
2.编写工作类,用于完成计划任务的行为事件,如发文件邮件清数据等(包含制作Excel表格)
@Component("myjob")
public class MyJob {
@Autowired
private EmailUtil emailUtil;
public void clearMemberTickct() {
System.out.println("清空程序运行");
//调用清空数据的方法
System.out.println("清空" + 3 + "条数据");
}
public void sendMemberReport() {
System.out.println("文本邮件程序运行");
//调用查询最近登录信息
emailUtil.sendEmail("huangwenhao.567@qq.com", "每日会员报表", "会员最近登录信息");
}
public void sendExcel() throws IOException {
System.out.println("表格邮件程序运行");
List<Member> list = service.findAll();
HSSFWorkbook wk = new HSSFWorkbook();//生成excel文件
HSSFSheet sheet = wk.createSheet("会员");//创建表
sheet.createRow(2).createCell(3).setCellValue("会员信息报表");//创建行2同时创建列3并给列3赋值