您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關Springboot中怎么實現一個郵件發送功能,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
1.創建springboot項目
2.pom導入依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId></dependency>
3.application.properties配置文件
spring.mail.host=smtp.163.comspring.mail.username=sple_vip@163.com//發件人郵箱,需要開啟smtp服務spring.mail.password=ming438434//授權密碼,非郵箱的登錄密碼spring.mail.port=25spring.mail.protocol=smtpspring.mail.default-encoding=UTF-8
發件人郵箱的設置:
郵箱客戶端授權碼也需要手動開啟,設置授權碼
4.用戶輸入自己的郵箱,點擊找回,前端頁面
html代碼:
<p class="regWrap"> <p class="regName"> <span>請輸入郵箱</span> <input id="mail" type="email" class="mail" placeholder="請輸入郵箱"> </p> <button id="registbtn" class="regBtn" type="button">找回</button></p>
js代碼:
$(function () { $("#registbtn").click(function() { var user = { mail:$("#mail").val() } $.ajax({ type: "POST", url:"/mail.action", contentType: "application/json;", data: JSON.stringify(user), success: function (data) { if(data == "successful"){ alert("已發送至您的郵箱") location.href="/login.html" rel="external nofollow" ; } if (data=="failful") { alert("郵箱錯誤") } }, error: function (data) { alert("網絡繁忙") } }); });});
5.點擊找回,進入controller層
@RequestMapping("/mail.action")public String mail(@RequestBody User user) { return mailService.sendMail(user);}
service層
@Servicepublic class MailServiceImpl implements MailService{ @Autowired private JavaMailSender javaMailSender; @Autowired private UserMapper userMapper; @Override public String sendMail(User user) { User user2 = mailPwd(user); StringBuilder stringBuilder=new StringBuilder(); stringBuilder.append("<html><head><title></title></head><body>"); stringBuilder.append("親愛的用戶"+user2.getAccount()+",您的當前密碼是:"+user2.getPassword()); stringBuilder.append("</br><a href='https://www.baidu.com/'>訪問百度</a></body><html>"); MimeMessage mimeMessage=javaMailSender.createMimeMessage(); //multipart模式 try { MimeMessageHelper mimeMessageHelper=new MimeMessageHelper(mimeMessage, true); mimeMessageHelper.setTo(user.getMail());//收件人郵箱user.getMail() mimeMessageHelper.setFrom("sple_vip@163.com");//發件人郵箱 mimeMessage.setSubject("找回密碼"); //啟用html mimeMessageHelper.setText(stringBuilder.toString(),true); javaMailSender.send(mimeMessage); return Constent.SUCCESSFUL; } catch (MessagingException e) { e.printStackTrace(); return Constent.FAILFUL; } } /** * 通過郵箱到數據庫查詢用戶的信息 */ @Override public User mailPwd(User user) { return userMapper.mailPwd(user); } }
dao層
public interface UserMapper { /** * 通過郵箱查詢用戶信息 */ @Select("SELECT * FROM user WHERE mail = #{mail}") public User mailPwd(User user);}
以上就是Springboot中怎么實現一個郵件發送功能,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。