如何做一个单页的网站,头像定制在线生成器,wordpress 5.0.3,重庆微网站一、QQ开启SMTP
打开QQ邮箱#xff0c;点击设置#xff0c;进入账号#xff0c;往下滑后#xff0c;看见服务状态后#xff0c;点击管理服务 进入管理服务后#xff0c;打开服务#xff0c;然后获取授权码 二 、导入依赖 !-- 邮箱--dependency点击设置进入账号往下滑后看见服务状态后点击管理服务 进入管理服务后打开服务然后获取授权码 二 、导入依赖 !-- 邮箱--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-mail/artifactId/dependency三、 yaml配置 spring:mail:host: smtp.qq.comusername: 邮箱号 #可以改成你的邮箱号需要开启smtppassword: 授权码default-encoding: UTF-8protocol: smtpport: 465properties:mail:smtp:auth: truesocketFactory:class: javax.net.ssl.SSLSocketFactoryport: 465ssl:enable: truestarttls:enable: truerequired: true 四、Email工具类和EmailDTO 类
1.Email工具类
Slf4j
Component
public class EmailUtil{Value(${spring.mail.username})private String email;Resourceprivate JavaMailSender javaMailSender;Resourceprivate JavaMailSenderImpl mailSender;Resourceprivate TemplateEngine templateEngine;public void sendHtmlMail(EmailDTO emailDTO) {try {MimeMessage mimeMessage javaMailSender.createMimeMessage();MimeMessageHelper mimeMessageHelper new MimeMessageHelper(mimeMessage);Context context new Context();context.setVariables(emailDTO.getCommentMap());String process templateEngine.process(emailDTO.getTemplate(), context);mimeMessageHelper.setFrom(email);mimeMessageHelper.setTo(emailDTO.getEmail());mimeMessageHelper.setSubject(emailDTO.getSubject());mimeMessageHelper.setText(process, true);javaMailSender.send(mimeMessage);} catch (MessagingException e) {e.printStackTrace();}}
}2. EmailDTO 类 用于封装发送所需要的信息包括对方邮箱号验证码、主题、内容、引用模板
Data
Builder
AllArgsConstructor
NoArgsConstructor
public class EmailDTO implements Serializable {private String email;private String code;private String subject;private MapString, Object commentMap;private String template;}五、 使用短信邮件发送示例 通过什么Map将所需要发送的内容进行封装email为对方的邮箱号subject为本次邮件的主题最后通过EmailUtil 的sendHtmlMail方法进行发送即可。 Autowiredprivate EmailUtil emailUtil;Testpublic void sendMessage(){MapString, Object map new HashMap();map.put(content, -------发送的内容---------);EmailDTO emailDTO EmailDTO.builder().template(common.html).email(需要发送的邮箱).subject(主题).commentMap(map).build();CompletableFuture.runAsync(()- emailUtil.sendHtmlMail(emailDTO));} common.html模板放在项目src/main/resources/templates/common.html路径下
!DOCTYPE html
html langen xmlns:thhttp://www.w3.org/1999/xhtml
headmeta charsetUTF-8titleTitle/title
/head
body
div styleborder-radius: 10px 10px 10px 10px;font-size: 13px;color: #555555;width: 666px;margin: 50px auto;border: 1px solid #eee;max-width: 100%;background: #ffffff repeating-linear-gradient(-45deg,#fff,#fff 1.125rem,transparent 1.125rem,transparent 2.25rem);box-shadow: 0 1px 5px rgb(0 0 0 / 15%);div stylebackground:#49BDAD;color:#ffffff;border-radius: 10px 10px 0 0;background-image: -moz-linear-gradient(0deg, rgb(67, 198, 184), rgb(255, 209, 244));background-image: -webkit-linear-gradient(0deg, rgb(67, 198, 184), rgb(255, 209, 244));height: 66px;p stylefont-size:15px;word-break:break-all;padding: 23px 32px;margin:0;background-color: hsla(0,0%,100%,.4);border-radius: 10px 10px 0 0;来自a styletext-decoration:none;color:#12addb hrefhttps://www.pengzhenggao.top后台管理/a的邮件/p/divdiv stylemargin:20px auto;width:90%div stylebackground: #f5f5f5;margin:20px 0;padding:15px;border-radius:5px;font-size:14px;p th:utext${content}/p/divdiv stylecolor: #8c8c8c; font-size: 10px;width: 100%;text-align: center;word-wrap: break-word;p stylepadding: 20px我们不会向你索取任何验证码,请勿暴露验证码于他人/p/div/div
/div
/body
/html