Java Mail Htmlメール送信を行うサンプル

環境
Java SE 1.8
Eclipse 4.14.0

構文
1.javax.mail.Sessionについて
public static Session getDefaultInstance(Properties props,Authenticator authenticator)

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
デフォルトの Session オブジェクトを取得します。デフォルトがまだ設定されていない場合、新しい Session オブジェクトが作成され、デフォルトとしてインストールされます。
デフォルトの Session オブジェクトを取得します。デフォルトがまだ設定されていない場合、新しい Session オブジェクトが作成され、デフォルトとしてインストールされます。
デフォルトの Session オブジェクトを取得します。デフォルトがまだ設定されていない場合、新しい Session オブジェクトが作成され、デフォルトとしてインストールされます。

2.クラス MimeMessage
public void setHeader(String name,String value) throws MessagingException
この header_name の値を設定します。既存のすべてのヘッダー値をこの新しい値で置き換えます。

3.public void setContent(Object o,String type) throws MessagingException

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
コンテンツは DataHandler オブジェクトにラップされています。
パラメーター:
o - コンテンツオブジェクト
type - オブジェクトの MIME 型
コンテンツは DataHandler オブジェクトにラップされています。 パラメーター: o - コンテンツオブジェクト type - オブジェクトの MIME 型
コンテンツは DataHandler オブジェクトにラップされています。
パラメーター:
o - コンテンツオブジェクト
type - オブジェクトの MIME 型

使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
package com.arkgame.study.mail;
import java.util.Date;
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;
public class ArkSendHtmlMail {
public static void main(String[] args) {
try {
Properties props = System.getProperties();
props.put("mail.smtp.host", "xxxx");
props.put("mail.smtp.auth","true");
// sessionのインスタンス生成
Session session = Session.getDefaultInstance(props, null);
MimeMessage mimeMessage = new MimeMessage(session);
// 差出人
mimeMessage.setFrom(new InternetAddress("form@arkgame.com", "arkgame", "iso-2022-jp"));
// 宛先
mimeMessage.setRecipients(Message.RecipientType.TO, "to@arkgame.com");
// 件名
mimeMessage.setSubject("メールテストタイトル", "iso-2022-jp");
// ヘッダ
mimeMessage.setHeader("Content-Type", "text/html; charset=iso-2022-jp");
//本文
mimeMessage.setContent("<html><body><a href=\"https://www.arkgame.com/\">arkgame.com</a></body></html>", "text/html; charset=iso-2022-jp");
// 送信日付
mimeMessage.setSentDate(new Date());
// Transport オブジェクトを取得
Transport tp = session.getTransport("smtp");
tp.connect(null, "user", "user");
tp.sendMessage(mimeMessage, mimeMessage.getFrom());
} catch (Exception e) {
e.printStackTrace();
}
}
}
package com.arkgame.study.mail; import java.util.Date; 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; public class ArkSendHtmlMail { public static void main(String[] args) { try { Properties props = System.getProperties(); props.put("mail.smtp.host", "xxxx"); props.put("mail.smtp.auth","true"); // sessionのインスタンス生成 Session session = Session.getDefaultInstance(props, null); MimeMessage mimeMessage = new MimeMessage(session); // 差出人 mimeMessage.setFrom(new InternetAddress("form@arkgame.com", "arkgame", "iso-2022-jp")); // 宛先 mimeMessage.setRecipients(Message.RecipientType.TO, "to@arkgame.com"); // 件名 mimeMessage.setSubject("メールテストタイトル", "iso-2022-jp"); // ヘッダ mimeMessage.setHeader("Content-Type", "text/html; charset=iso-2022-jp"); //本文 mimeMessage.setContent("<html><body><a href=\"https://www.arkgame.com/\">arkgame.com</a></body></html>", "text/html; charset=iso-2022-jp"); // 送信日付 mimeMessage.setSentDate(new Date()); // Transport オブジェクトを取得 Transport tp = session.getTransport("smtp"); tp.connect(null, "user", "user"); tp.sendMessage(mimeMessage, mimeMessage.getFrom()); } catch (Exception e) { e.printStackTrace(); } } }
package com.arkgame.study.mail;

import java.util.Date;
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;

public class ArkSendHtmlMail {

    public static void main(String[] args) {
        try {
            Properties props = System.getProperties();
            props.put("mail.smtp.host", "xxxx");
            props.put("mail.smtp.auth","true");
                  // sessionのインスタンス生成
            Session session = Session.getDefaultInstance(props, null);
            MimeMessage mimeMessage = new MimeMessage(session);
            // 差出人
            mimeMessage.setFrom(new InternetAddress("form@arkgame.com", "arkgame", "iso-2022-jp"));
                  // 宛先
            mimeMessage.setRecipients(Message.RecipientType.TO, "to@arkgame.com");
            // 件名
            mimeMessage.setSubject("メールテストタイトル", "iso-2022-jp");
            // ヘッダ
            mimeMessage.setHeader("Content-Type", "text/html; charset=iso-2022-jp");
            //本文           
               mimeMessage.setContent("<html><body><a href=\"https://www.arkgame.com/\">arkgame.com</a></body></html>", "text/html; charset=iso-2022-jp");
             // 送信日付
                  mimeMessage.setSentDate(new Date());
                  //  Transport オブジェクトを取得
            Transport tp = session.getTransport("smtp");
            tp.connect(null, "user", "user");
            tp.sendMessage(mimeMessage, mimeMessage.getFrom());
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}

 

Java

Posted by arkgame