1、引入依赖
<!-- mail依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>
2、参数配置
在application.properties中配置邮件相关的参数
spring.thymeleaf.cache=false spring.mail.host=smtp.qq.com spring.mail.username=***@qq.com spring.mail.password=ymwrdffauajebgde //此处的密码时qq邮箱的授权码 spring.mail.properties.mail.smtp.auth=true spring.mail.properties.mail.smtp.starttls.enable=true spring.mail.properties.mail.smtp.stattls.required=true
3、邮件Service代码
@Service public class MailService { @Value("${spring.mail.username}") private String from; @Autowired private JavaMailSender sender; /*发送邮件的方法*/ public void sendSimple(String to, String title, String content){ SimpleMailMessage message = new SimpleMailMessage(); message.setFrom(from); //发送者 message.setTo(to); //接受者 message.setSubject(title); //发送标题 message.setText(content); //发送内容 sender.send(message); System.out.println("邮件发送成功"); } }
4、编写页面代码
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"
xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3">
<head>
<meta charset="UTF-8" />
<title>Insert title here</title>
</head>
<body>
<h1 th:inlines="text">邮件发送</h1>
<form action="sendMail" method="post">
<p>选择文件: <input type="text" name="title"/></p>
<p><input type="submit" value="提交"/></p>
</form>
</body>
</html>
5、邮件请求处理
@Controller public class MailController {
@Autowired private MailService mailService; private String to="***@qq.com"; @RequestMapping("mail") public String mail(){ return "/mail"; } @RequestMapping("sendMail") @ResponseBody public String sendMail(@RequestParam("title")String title){ System.out.println("-----title: " + title); mailService.sendSimple(to, title, title); return "success"; } }
6、测试
7、qq邮箱授权码