基于SpringBoot实现邮件发送
					
					
						chenlong
						发布:2021-09-30 13:49:44阅读:
					
				
				(1)首先看邮箱配置部分,配置获取163邮箱授权码,配置完以后会获取一个16位的授权码,后面会作为密码,详见后文(QQ的自行网上参考)


(2)导入Spring邮件依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>
(3)基于yml配置相关配置,注:密码非邮箱密码,而是步骤1中获取到的授权码
spring: mail: #smtp服务主机 qq邮箱则为smtp.qq.com host: smtp.163.com #服务协议 protocol: smtp # 编码集 default-encoding: UTF-8 #发送邮件的账户 username: 177xxxxxxxx@163.com #授权码(步骤1中获取的16位的授权码) password: xxxxxxxxxxxxxxxx test-connection: true properties: mail: smtp: auth: true starttls: enable: true required: true
(4)在Controller里面添加接口方法
@Autowired
private JavaMailSenderImpl mailSender;
@Value("${spring.mail.username}")
private String from;
@RequestMapping(value = "/sendSimpleMail", method = RequestMethod.POST)
@ResponseBody
public JsonResult<String> sendSimpleMail(@RequestBody ToEmail toEmail) {
    //创建简单邮件消息
    SimpleMailMessage message = new SimpleMailMessage();
    //谁发的
    message.setFrom(from);
    //谁要接收
    message.setTo(toEmail.getTos());
    //邮件标题
    message.setSubject(toEmail.getSubject());
    //邮件内容
    message.setText(toEmail.getContent());
    try {
        mailSender.send(message);
        return JsonResult.success( "发送普通邮件成功");
    } catch (MailException e) {
        e.printStackTrace();
        return JsonResult.failWithMsg("普通邮件方失败");
    }
}(5)最后调用接口测试,邮件发送成功,查看邮件正常发送

小礼物走一波,支持作者
赏还没有人赞赏,支持一波吧