最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Springboot實(shí)現(xiàn)郵件發(fā)送功能

 更新時(shí)間:2020年02月12日 13:59:27   作者:Spleeeeee  
這篇文章主要為大家詳細(xì)介紹了Springboot實(shí)現(xiàn)郵件發(fā)送功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Springboot實(shí)現(xiàn)郵件發(fā)送具體代碼,供大家參考,具體內(nèi)容如下

需求:用戶注冊賬號綁定郵箱之后,下次登錄時(shí)忘記密碼,需要通過郵箱找回密碼

1.創(chuàng)建springboot項(xiàng)目

2.pom導(dǎo)入依賴

<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

3.application.properties配置文件

spring.mail.host=smtp.163.com
spring.mail.username=sple_vip@163.com//發(fā)件人郵箱,需要開啟smtp服務(wù)
spring.mail.password=ming438434//授權(quán)密碼,非郵箱的登錄密碼
spring.mail.port=25
spring.mail.protocol=smtp
spring.mail.default-encoding=UTF-8

發(fā)件人郵箱的設(shè)置:

郵箱客戶端授權(quán)碼也需要手動開啟,設(shè)置授權(quán)碼

4.用戶輸入自己的郵箱,點(diǎn)擊找回,前端頁面

html代碼:

<div class="regWrap">
 <div class="regName">
 <span>請輸入郵箱</span>
 <input id="mail" type="email" class="mail" placeholder="請輸入郵箱">
 </div>
 <button id="registbtn" class="regBtn" type="button">找回</button>
</div>

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("已發(fā)送至您的郵箱")
 location.href="/login.html" rel="external nofollow" ;
 }
 if (data=="failful") {
 alert("郵箱錯誤")
 }
 },
 error: function (data) { 
  alert("網(wǎng)絡(luò)繁忙")
 } 
 });
 
 });
});

5.點(diǎn)擊找回,進(jìn)入controller層

@RequestMapping("/mail.action")
public String mail(@RequestBody User user) {
 return mailService.sendMail(user);
}

service層

@Service
public 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()+",您的當(dāng)前密碼是:"+user2.getPassword());
 stringBuilder.append("</br><a );
 MimeMessage mimeMessage=javaMailSender.createMimeMessage();
 //multipart模式
 try {
 MimeMessageHelper mimeMessageHelper=new MimeMessageHelper(mimeMessage, true);
 mimeMessageHelper.setTo(user.getMail());//收件人郵箱user.getMail()
 mimeMessageHelper.setFrom("sple_vip@163.com");//發(fā)件人郵箱
 mimeMessage.setSubject("找回密碼");
 //啟用html
 mimeMessageHelper.setText(stringBuilder.toString(),true);
 javaMailSender.send(mimeMessage);
 return Constent.SUCCESSFUL;
 } catch (MessagingException e) {
 e.printStackTrace();
 return Constent.FAILFUL;
 }
 }
 
 /**
 * 通過郵箱到數(shù)據(jù)庫查詢用戶的信息
 */
 @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);
}

發(fā)送成功效果

這是一個簡單的通過郵箱找回密碼就完成了。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 在SpringBoot項(xiàng)目中實(shí)現(xiàn)讀寫分離的流程步驟

    在SpringBoot項(xiàng)目中實(shí)現(xiàn)讀寫分離的流程步驟

    SpringBoot作為一種快速開發(fā)框架,廣泛應(yīng)用于Java項(xiàng)目中,在一些大型應(yīng)用中,數(shù)據(jù)庫的讀寫分離是提升性能和擴(kuò)展性的一種重要手段,本文將介紹如何在SpringBoot項(xiàng)目中優(yōu)雅地實(shí)現(xiàn)讀寫分離,并通過適當(dāng)?shù)拇a插入,詳細(xì)展開實(shí)現(xiàn)步驟,同時(shí)進(jìn)行拓展和分析
    2023-11-11
  • SpringBoot實(shí)現(xiàn)聯(lián)表查詢的代碼詳解

    SpringBoot實(shí)現(xiàn)聯(lián)表查詢的代碼詳解

    這篇文章主要介紹了SpringBoot中如何實(shí)現(xiàn)聯(lián)表查詢,文中通過代碼示例和圖文結(jié)合的方式講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-05-05
  • java中\(zhòng)t,\n,\r,\b,\f 的作用及說明

    java中\(zhòng)t,\n,\r,\b,\f 的作用及說明

    這篇文章主要介紹了java中\(zhòng)t,\n,\r,\b,\f 的作用及說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • IDEA實(shí)現(xiàn)JDBC的操作步驟

    IDEA實(shí)現(xiàn)JDBC的操作步驟

    JDBC提供了一種基準(zhǔn),據(jù)此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠編寫數(shù)據(jù)庫應(yīng)用程序,本文給大家介紹IDEA實(shí)現(xiàn)JDBC的操作步驟,感興趣的朋友一起看看吧
    2022-01-01
  • java加密MD5實(shí)現(xiàn)及密碼驗(yàn)證代碼實(shí)例

    java加密MD5實(shí)現(xiàn)及密碼驗(yàn)證代碼實(shí)例

    這篇文章主要介紹了java加密MD5實(shí)現(xiàn)及密碼驗(yàn)證代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 淺談JAVA中輸入輸出流實(shí)例詳解

    淺談JAVA中輸入輸出流實(shí)例詳解

    Java中的流分為兩種,一種是字節(jié)流,另一種是字符流。這篇文章主要介紹了JAVA中輸入輸出流的相關(guān)資料,需要的朋友可以參考下
    2016-07-07
  • JAVA如何解決并發(fā)問題

    JAVA如何解決并發(fā)問題

    這篇文章主要介紹了JAVA如何解決并發(fā)問題的處理方法,文中講解的非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • springboot 緩存@EnableCaching實(shí)例

    springboot 緩存@EnableCaching實(shí)例

    這篇文章主要介紹了springboot 緩存@EnableCaching實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Spring Boot 驗(yàn)證碼框架 CAPTCHA詳解

    Spring Boot 驗(yàn)證碼框架 CAPTCHA詳解

    這篇文章主要介紹了Spring Boot 驗(yàn)證碼框架 CAPTCHA詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • 關(guān)于log4j2的異步日志輸出方式

    關(guān)于log4j2的異步日志輸出方式

    這篇文章主要介紹了關(guān)于log4j2的異步日志輸出方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12

最新評論

南溪县| 金秀| 元谋县| 安远县| 积石山| 冕宁县| 永丰县| 英吉沙县| 阿瓦提县| 平和县| 盐城市| 南江县| 陕西省| 和林格尔县| 碌曲县| 双鸭山市| 西乡县| 鄂托克旗| 石城县| 牡丹江市| 宣武区| 德清县| 蓝山县| 海盐县| 和平区| 朝阳区| 巫溪县| 房产| 大姚县| 娄底市| 察哈| 班玛县| 云安县| 镇沅| 集贤县| 大厂| 吐鲁番市| 广东省| 修文县| 安顺市| 安岳县|