实现springboot发送邮件功能的简单demo
程序员文章站
2024-03-20 11:20:40
...
添加依赖
springboot的启动器里有一个mail启动器,直接添加进来即可
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
配置邮件信息
需要注意的是password不是邮箱登录密码,而是客户端授权码,关于如何获取客户端授权码请自行百度
ServiceImpl
/**
* @Author: Fandy
* @Date: 2020/4/16 10:11
*/
@Service
public class MailServiceImpl implements MailService {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired
private MailSender mailSender;
@Value("${spring.mail.username}")
private String from;
@Override
public void sendSimpleMail(String to, String subject, String content) {
SimpleMailMessage smm = new SimpleMailMessage();
smm.setFrom(from);
smm.setCc("aaa@qq.com");
smm.setTo(to);
smm.setSubject(subject);
smm.setText(content);
try{
mailSender.send(smm);
logger.info("简单邮件已经发送");
}catch (Exception e) {
e.printStackTrace();
}
}
}
这里提一下setCc方法,这个方法是设置抄送人的意思,如果不设置的话,会报405 DT:SPM等错误信息,大概就是被163邮箱认为邮件内容不规范,包含违法信息等,加了这个方法就好了,如果还报错,就改一下发送文本和标题,使其正常一点
测试
@Test
void testMail() {
mailService.sendSimpleMail("aaa@qq.com","婚礼邀请","邀请您来参与婚礼");
}
这样,springboot就能发送一封简单的邮件啦~~~~~
下一篇: 周报10