javax.mail使用

工具類

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("標題", "正文", "接收郵箱號");
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章