JAVA实现导出execl并定时发送邮件

这篇博客介绍了如何使用Java实现Excel的导出功能,并结合Quartz库实现定时发送包含Excel附件的邮件。主要涉及的库有Apache POI用于处理Excel,Quartz用于任务调度,以及JavaMail API发送邮件。代码示例中展示了如何创建JobDetail和Trigger来执行任务,以及如何生成Excel文件并附在邮件中。
摘要由CSDN通过智能技术生成

Java 实现导出execl并发送邮件,需要导入如下包:

org.slf4j
slf4j-log4j12
1.7.12


javax.mail
mail
1.4.5


com.alibaba.druid
druid-wrapper
0.2.9



org.quartz-scheduler
quartz
2.2.1


org.quartz-scheduler
quartz-jobs
2.2.1

代码片段:
public static void main( String[] args ) throws SchedulerException
{
//初始化配置文件
Config cf=new Config();
QuartzManage mainScheduler = new QuartzManage(cf.cron1,cf.cron2);
mainScheduler.schedulerJob();
}
任务调度:
public class QuartzManage {
//from w3c
// 每次当scheduler执行job时,在调用其execute(…)方法之前会创建该类的一个新的实例;执行完毕,对该实例的引用就被丢弃了,实例会被垃圾回收;这种执行策略带来的一个后果是,job必须有一个无参的
// 构造函数(当使用默认的JobFactory时);另一个后果是,在job类中,不应该定义有状态的数据属性,因为在job的多次执行中,这些属性的值不会保留。那么如何给job实例增加属性或配置呢?如何在job的
// 多次执行中,跟踪job的状态呢?答案就是:JobDataMap,JobDetail对象的一部分。

//秒	   分    时	每月第几天(?)   月       每周第几天(?)  (年)
private static  String CRON_EXPRESSION_WEEK;
private  static String CRON_EXPRESSION_MONTH;

private static final String GROUP_NAME = "PrintJob";

public QuartzManage(String cron1,String cron2){
this.CRON_EXPRESSION_WEEK=cron1;
this.CRON_EXPRESSION_MONTH=cron2;
}

public static void schedulerJob() {

    JobDetail jobDetail1 = JobBuilder.newJob(MyJobWeek.class)
            .withIdentity("job1", GROUP_NAME).build();
    JobDetail jobDetail2 = JobBuilder.newJob(MyJobMonth.class)
            .withIdentity("job2", GROUP_NAME).build();

    Trigger trigger1 = TriggerBuilder.newTrigger()
            .w
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值