SpringBoot 与任务

异步任务

@Service public class AsyncService { @Async //标识着这是一个异步任务 public void hello(){ try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("数据处理中 .... "); } } @EnableAsync //开启异步任务 @SpringBootApplication public class TaskMain { public static void main(String[] args) { SpringApplication.run(TaskMain.class,args); } }

定时任务

public class ScheduleService { @Scheduled(cron = "0 * * * * MON-SAT") public void schedule(){ System.out.println("定时任务。。。"); } } @EnableScheduling //开启基于注解的定时任务 @EnableAsync @SpringBootApplication public class TaskMain { public static void main(String[] args) { SpringApplication.run(TaskMain.class,args); } }

41b50bab8d0447989358bca53850b479

clipboard

邮件任务

da5bd567e90e40bc9f601086141813eb

@SpringBootTest @RunWith(SpringRunner.class) public class TaskMainTest { @Autowired private JavaMailSenderImpl mailSender; @Test public void testMail(){ //发送简单邮件 SimpleMailMessage mailMessage = new SimpleMailMessage(); //邮件设置 mailMessage.setSubject("通知"); mailMessage.setText("今晚7:30开会"); mailMessage.setTo("2972891323@qq.com"); mailMessage.setFrom("1285653662@qq.com"); mailSender.send(mailMessage); } }

application.yml配置:

spring: mail: username: 1285653662@qq.com password: gkjrxbmyudswibjd host: smtp.qq.com properties: mail: smtp: ssl: enable: true

aba4ff65f5ed4c84a5cd20af9ed51784

发送复杂邮件:

/* 发送复杂邮件 */ @Test public void testComplexMail() throws MessagingException { //创建复杂邮件 MimeMessage mimeMessage = mailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true); helper.setSubject("通知"); helper.setText("<h2 style='color:blue'>今晚7:30开会<h2>",true); // 添加附件 helper.addAttachment("image.jpg", new File("D:\\GoogleDownload\\background\\image.jpg")); helper.setTo("2972891323@qq.com"); helper.setFrom("1285653662@qq.com"); mailSender.send(mimeMessage); }

clipboard

posted @   青岑  阅读(142)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示
主题色彩