java實(shí)現(xiàn)發(fā)送郵箱驗(yàn)證碼
本文實(shí)例為大家分享了java實(shí)現(xiàn)發(fā)送郵箱驗(yàn)證碼的具體代碼,供大家參考,具體內(nèi)容如下
添加依賴(lài)
<!-- 郵箱驗(yàn)證碼 https://mvnrepository.com/artifact/org.apache.commons/commons-email --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-email</artifactId> <version>1.4</version> </dependency>
以qq郵箱為例登入qq郵箱找到設(shè)置
找到 POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務(wù) 開(kāi)啟 :IMAP/SMTP服務(wù) 我已經(jīng)開(kāi)啟了,不做演示了
驗(yàn)證碼生成的工具方法
/** * 生成隨機(jī)驗(yàn)證碼 * @param number 幾位數(shù) * @return */ @Override public String generateVerifyCode(int number) { Random random = new Random(); StringBuilder builder = new StringBuilder(); for (int i = 1; i <= number; i++) { builder.append(random.nextInt(10)); } return builder.toString(); }
發(fā)送驗(yàn)證碼
/** * 發(fā)送驗(yàn)證碼 * @param email * @return */ @Override public int sendAuthCodeEmail(String email) { try { HtmlEmail mail = new HtmlEmail(); /*發(fā)送郵件的服務(wù)器 126郵箱為smtp.126.com,163郵箱為163.smtp.com,QQ為smtp.qq.com*/ mail.setHostName("smtp.qq.com"); /*不設(shè)置發(fā)送的消息有可能是亂碼*/ mail.setCharset("UTF-8"); /*IMAP/SMTP服務(wù)的密碼*/ mail.setAuthentication("發(fā)送消息的郵箱如:2212312@qq.com", "密碼"); /*發(fā)送郵件的郵箱和發(fā)件人*/ mail.setFrom("發(fā)件郵箱", "發(fā)件人"); /*使用安全鏈接*/ mail.setSSLOnConnect(true); /*接收的郵箱*/ mail.addTo("123123@qq.com"); /*驗(yàn)證碼*/ String code = this.generateVerifyCode(6); /*設(shè)置郵件的主題*/ mail.setSubject("注冊(cè)驗(yàn)證碼"); /*設(shè)置郵件的內(nèi)容*/ mail.setMsg("尊敬的用戶(hù):你好! 注冊(cè)驗(yàn)證碼為:" + code + "(有效期為一分鐘)"); mail.send();//發(fā)送 } catch (Exception e) { return 0; } return 1; }
運(yùn)行結(jié)果
完成
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
maven導(dǎo)入無(wú)法拉取所需依賴(lài)的解決方法
最近遇到個(gè)問(wèn)題maven導(dǎo)入無(wú)法拉取所需依賴(lài)的解決方法,本文就來(lái)詳細(xì)的介紹一下解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02java+selenium 網(wǎng)易云音樂(lè)刷累計(jì)聽(tīng)歌數(shù)的方法
這篇文章主要介紹了java+selenium 網(wǎng)易云音樂(lè)刷累計(jì)聽(tīng)歌數(shù)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06IntelliJ IDEA JRebel 安裝使用圖文教程(熱部署插件)
IDEA 全稱(chēng) IntelliJ IDEA,是java語(yǔ)言開(kāi)發(fā)的集成環(huán)境,IntelliJ在業(yè)界被公認(rèn)為最好的java開(kāi)發(fā)工具之一。這篇文章主要介紹了IntelliJ IDEA 熱部署插件JRebel 安裝使用圖文教程,需要的朋友可以參考下2018-03-03mybatis QueryWrapper的條件構(gòu)造之a(chǎn)pply、last、select解析
這篇文章主要介紹了mybatis QueryWrapper的條件構(gòu)造之a(chǎn)pply、last、select,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03Spring?MVC文件請(qǐng)求處理MultipartResolver詳解
這篇文章主要介紹了Spring?MVC文件請(qǐng)求處理詳解:MultipartResolver,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-11-11Java模擬QQ實(shí)現(xiàn)聊天互動(dòng)程序
這篇文章主要介紹了如何利用Java語(yǔ)言模擬QQ實(shí)現(xiàn)一個(gè)簡(jiǎn)易的聊天互動(dòng)程序,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-06-06SpringBoot Shiro授權(quán)實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了SpringBoot Shiro授權(quán)實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11Spring Boot和Thymeleaf整合結(jié)合JPA實(shí)現(xiàn)分頁(yè)效果(實(shí)例代碼)
這篇文章主要介紹了Spring Boot和Thymeleaf整合結(jié)合JPA實(shí)現(xiàn)分頁(yè)效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02