idea maven環境下 java實現發送郵件驗證


1.開通smtp授權

QQ郵箱-設置-賬戶-開啟

得到一個授權碼

 

2.下載javax.email包

maven項目中

pom文件加入:

<dependency>
    <groupId>com.sun.mail</groupId>
    <artifactId>javax.mail</artifactId>
    <version>1.5.5</version>
</dependency>

 

3.方法:

import java.util.Properties;
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;




               //email 你要發給誰      //authcode  驗證碼
public static void email(String email,Integer authcode)throws Exception {
		Properties properties = new Properties();
		properties.setProperty("mail.transport.protocol", "smtp");//發送郵件協議
		properties.setProperty("mail.smtp.auth", "true");//需要驗證
		 //properties.setProperty("mail.debug", "true");//設置debug模式 后台輸出郵件發送的過程
		Session session = Session.getInstance(properties);
		session.setDebug(true);//debug模式
		//郵件信息
		Message messgae = new MimeMessage(session);
		messgae.setFrom(new InternetAddress("測試@sina.com"));//設置發送人
		messgae.setText("你的驗證碼為:"+authcode+"。請注意,驗證碼有效時間為2分鍾!!!");//設置郵件內容
		messgae.setSubject("郵箱驗證");//設置郵件主題
		//發送郵件
		Transport tran = session.getTransport();
		 tran.connect("smtp.sina.com", 25, "郵箱賬戶", "郵箱授權碼");//連接到新浪郵箱服務器
		// tran.connect("smtp.qq.com",587, "Michael8@qq.vip.com", "xxxx");//連接到QQ郵箱服務器
		tran.sendMessage(messgae, new Address[]{ new InternetAddress(email)});//設置郵件接收人
		tran.close();
	}

 4.驗證邏輯

點擊發送時生成一串隨機數字,存一份發一份,驗證即可。

搞定。





 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM