工具類
import java.util.Properties;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMessage.RecipientType;
public class MailUtils {
private static String smtp_host = "smtp.163.com"; // 網易
private static String username = "郵箱號碼"; // 郵箱賬戶
private static String password = "郵箱授權碼"; // 郵箱授權碼
private static String from = "郵箱號碼"; // 使用當前賬戶
public static String activeUrl = "激活路徑";
public static void sendMail(String subject, String content, String to) {
Properties props = new Properties();
props.setProperty("mail.smtp.host", smtp_host);
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.smtp.auth", "true");
Session session = Session.getInstance(props);
Message message = new MimeMessage(session);
try {
message.setFrom(new InternetAddress(from));
message.setRecipient(RecipientType.TO, new InternetAddress(to));
message.setSubject(subject);
message.setContent(content, "text/html;charset=utf-8");
Transport transport = session.getTransport();
transport.connect(smtp_host, username, password);
transport.sendMessage(message, message.getAllRecipients());
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("郵件發送失敗...");
}
}
}
//測試類
// 生成激活碼
public static void main(String[]args){
// 發送一封激活郵件
// 生成激活碼
String activecode = RandomStringUtils.randomNumeric(32);
// 將激活碼保存到redis,設置24小時失效
redisTemplate.opsForValue().set(model.getTelephone(), activecode, 24,
TimeUnit.HOURS);
// 調用MailUtils發送激活郵件
String content = "尊敬的客戶您好,請於24小時內,進行郵箱賬戶的綁定,點擊下面地址完成綁定:<br/><a href='"
+ MailUtils.activeUrl + "?telephone=" + model.getTelephone()
+ "&activecode=" + activecode + "'>綁定地址</a>";
MailUtils.sendMail("激活郵件", content, model.getEmail());
}
//pom文件導入座標
<!-- 郵件發送工具 -->
<dependency>
<groupId>javamail</groupId>
<artifactId>mail</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>org.apache.xbean</groupId>
<artifactId>xbean-spring</artifactId>
<version>3.7</version>
</dependency>
導入maven座標
<!-- 郵件發送工具 -->
<dependency>
<groupId>javamail</groupId>
<artifactId>mail</artifactId>
<version>1.3.2</version>
</dependency>
方法調用
MailUtils.sendMail("標題", "正文", "接收郵箱號");