xxl-job任务调度平台发送报警邮件

xxl-job任务调度平台发送报警邮件

前言

前几天接到了一个需求,是要在xxl-job(这个项目在网上很常见,是xuexueli大佬开源的~)项目里添加一个Job,定时发送邮件预警。因为办公室的前辈都写好了现成的,我直接照猫画虎就行了。

项目开发

    新建Java项目 在xxl-job里需要在jobhandle里新建一个Java项目,里面的@JobHandle相当于框架中Controller层的标识,还要加上@Component注解将其注入到Spring容器中。在xxl-job项目中的每个项目执行器都要继承IJobHandler,重写其execute方法,在这个方法里写具体的业务逻辑。
@JobHandler(value = "PPSAlarmMonitor")
@Component
public class PPSAlarmMonitoring extends IJobHandler {
          
   
/**
此处省略部分业务代码
*/
@Override
    public ReturnT<String> execute(String param) throws Exception {
          
   
    ...
}
    发送邮件具体代码 之后获取从前台admin页面配置的任务参数,在后台进行具体的参数解析。在这里编写html相关的代码,Java会将去解析成Html。
public boolean WSCClientByUrl(String to_address, String url) {
          
   
        boolean ret = false;
        Service1 factory = new Service1();
        Service1Soap service1Soap = factory.getService1Soap();
        String html = "<html>"
                + "<head>"
                + "<meta http-equiv=content-type content=text/html;charset=utf-8>";
        html += "</head>"
                + "<body>"
                + "<p style=color:blue style=font-weight:900;>" + "</p>";
        html += "</body>"
                + "</html>";
        try {
          
   
            String titleInfo =;
            String searchResult = service1Soap.sendMailInface(to_address, titleInfo, html);
            XxlJobLogger.log("searchResult: " + searchResult);
            ret = true;
        } catch (Exception e) {
          
   
            XxlJobLogger.log(e.toString());
        }
        return ret;
    }
    邮箱地址配置 本项目的邮件地址配置MySQL里,方便后期的维护。在Java代码里进行邮件地址的读取,将其发送给对应的邮箱。 具体的xxl-job项目是有字节跳动大佬开源的,感兴趣的可以前往

结语

已经从学校毕业差不多半年了,来这里也已经四个多月了,自己成长了多少自己也能感觉到,如人饮水,冷暖自知。从对项目的一无所知到先到的半知半解,自己还有很多要学习的地方,希望几年之后,能看的到自己的成长。

经验分享 程序员 微信小程序 职场和发展