异步,与邮件发送 ,定时任务

异步: 不用等待3秒,可以直接跳过执行后面的东西

@Service
public class AsynService {

    //告诉spring 这个是异步方法
    @Async
    public void hello(){
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("数据正在加载");
    }
}


//----------------
@RestController
public class AsynController {
    @Autowired
    AsynService asynService;

    @RequestMapping("/hello")
    public String hello1(){
        asynService.hello();
        return "ok";
    }
}
View Code

大main方法上的注解

//开启异步注解功能
@EnableAsync

邮件发送

@SpringBootTest
class Springboot09TestEbApplicationTests {
    @Autowired
    JavaMailSenderImpl mailSender;

    @Test
    void contextLoads() {
        //一个简单的邮件
        SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
        simpleMailMessage.setSubject("hello"); //邮件主题
        simpleMailMessage.setText("桂明现在到哪里了");//文本
        simpleMailMessage.setTo("1213146817@qq.com");
        simpleMailMessage.setFrom("614194188@qq.com");
        mailSender.send(simpleMailMessage);
    }
    @Test
    void contextLoads2() throws MessagingException {
        //一个复杂的邮件
        MimeMessage mimeMessage = mailSender.createMimeMessage();
        //组装                                              multipart 多部分
        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage,true,"utf-8");
        mimeMessageHelper.setSubject("你好");// 主题
        mimeMessageHelper.setText("<p style='color:red'>应该是红色的,桂明到哪了</p>",true);  //支持网页标签
        mimeMessageHelper.addAttachment("1.txt",new File("C:\\Users\\AKAGI\\Desktop\\Python小技巧.txt"));
        mimeMessageHelper.setTo("1213146817@qq.com");
        mimeMessageHelper.setFrom("614194188@qq.com");
        mailSender.send(mimeMessage);
    }

}

 定时任务

cron表达式在线生成

@Service
public class ScheduledScheduling {
    //在特定时间执行这个方法
    //cron表达式
    //每隔10秒执行一次
    @Scheduled(cron = "0/10 * * * * ? ")
    public void hello(){
        System.out.println("hello,你被执行了~");
    }
}



//  大main上注解
@EnableScheduling //开启定时功能的注解   @Scheduling去使用(什么时候执行)

 

posted @ 2022-05-05 18:06  磕伴  阅读(30)  评论(0)    收藏  举报