• Javaで、GMailを利用してメールを送信するサンプルです。
    • アカウント名や宛先、送信者、パスワードを変更して使って下さい。
  • 日本語を送信する時は何か注意が必要だった気がするのですが、何事も無く送信出来てしまいました。
  • JavaMailを使用しています。JavaMailは下記からダウンロードしてください。
  • JavaBeans Activation Framework (JAF)も必要らしいので下記からダウンロードしてください。
  • JavaMailとJAFをダウンロードしたら、中の「mail.jar」と「activation.jar」をクラスパスに入れればメールが送信出来るようになります。

サンプルソース

// JavaでGmailからメールを送信するサンプル(JavaMail使用)
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import com.sun.mail.smtp.*;
 
public class SendGmailSample {
  public static void main(String[] argv) {
    try {
      // プロパティの設定
      Properties props = System.getProperties();
      // ホスト
      props.put("mail.smtp.host", "smtp.gmail.com");
      // 認証(する)
      props.put("mail.smpt.auth", "true");
      // ポート指定(サブミッションポート)
      props.put("mail.smtp.port", "587");
      // STARTTLSによる暗号化(する)
      props.put("mail.smtp.starttls.enable", "true");
 
      // セッションの取得
      Session session = Session.getInstance(props);
 
      // MimeMessageの取得と設定
      Message msg = new MimeMessage(session);
      // 送信者設定
      msg.setFrom(new InternetAddress("GMailアカウント名@gmail.com"));
      // 宛先設定
      msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse("送信先メールアドレス", false));
      // タイトル設定
      msg.setSubject("タイトル");
      // 本文設定
      msg.setText("本文");
      // 送信日時設定
      msg.setSentDate(new Date());
 
      // 送信
      SMTPTransport t = (SMTPTransport) session.getTransport("smtp");
      try {
        t.connect("smtp.gmail.com", "GMailアカウント名", "GMailパスワード");
        t.sendMessage(msg, msg.getAllRecipients());
      } finally {
        t.close();
      }
 
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}
 

サンプルダウンロード


コメント

  • 助かるサンプル - 賀来 2014-07-10 05:43:02
  • 詰まってました。ありがとう - 松王 2015-04-26 16:07:21
  • 助かりました!ありがとうございます。 - ぱんだ 2015-10-25 12:59:56
  • クラスパスはどういうところですか、設定しないといけないんですか - nova (2018-12-02 22:57:39)

タグ:

Java メール GMail
最終更新:2013年07月31日 00:04
添付ファイル