tkxmailによるメール送信の方法(2)
添付ファイル・一斉送信

一斉送信とファイル添付

前回は、ライブラリのダウンロードと、基本的なメール送信について解説しました。今回は、一斉送信とファイル添付について解説します。

tkxmailは、同じメールをたくさんの人に一斉送信することができ、その際、CCBCCを指定できます。また、メールに複数のファイルを添付して送ることができます。一斉送信でファイル添付メールを送信することもできます。

一斉送信

一斉送信も簡単で、宛先メールアドレスをコンマで区切って、並べるだけでOKです。また、送信方法として、CC(カーボンコピーで送る)、BCC(BCCで送る)のうちどれかをパラメータで指定できます。なお、TO(一人へ送る)が、デフォルトの設定です。一斉送信で、デフォルトのままにしておくと、事実上CCと同じ効果になります。

package mailsample_2;
import net.tkxtools.MailUtil;
public class MailSample_2 {
    private static final String smtpId = "***";
    private static final String smtpPassword = "***";
    private static final int port       = 587;
    private static final String host    = "***";
    
    private static String to      = "tanaka@gmail.com, satoh@yahoo.co.jp";
    private static String from    = "student@tk-webs.com";
    private static String subject = "送信テスト";
    private static String body    = "こんにちは";     // 送信する本文      

    public static void main(String[] args)  {
        Mail.send(smtpId, smtpPassword, host, port, to, from, subject, body, "BCC");
    }
}

to(宛先メールアドレス)がコンマで区切って2つ指定してあります。また、Mail.sendメソッドのパラメータの末尾に、”BCC”が追加してあります。これにより、BCC(他にだれに送ったのかわからないモード)で2人にメールを送信できます。

ファイル添付

ファイル添付では、フォルダとファイル名のリストを指定してメールに添付します。sendメソッドの引数が増えるだけで、やり方はこれまでと同じです。

package mailsample_3;
import java.util.ArrayList;
import java.util.List;
import net.tkxtools.MailUtil;
public class MailSample_3 {
    private static final String smtpId = "***";
    private static final String smtpPassword = "***";
    private static final int port       = 587;
    private static final String host    = "***";
    
    private static String to      = "tanaka@gmail.com";
    private static String from    = "student@tk-webs.com";
    private static String subject = "送信テスト";
    private static String body    = "こんにちは";    // 送信する本文    
    
    private static String dir="w:\\files";          // 画像のあるフォルダ
    private static List<String> flist = new ArrayList<>();// ファイル名のリスト
    static {
        flist.add("4章JSFの基礎.pdf"); // 送信ファイル1
        flist.add("パソコン画像.jpg"); // 送信ファイル2
    }
    
    public static void main(String[] args)  {
        Mail.send(smtpId, smtpPassword, host, port, 
                            to, from, subject, body, dir, flist);
    }
}

dirが画像のあるフォルダで、Wドライブのfilesディレクトリです(表示フォントの関係でw:\dir の\記号がバックスラッシュになっています)。

flistには、添付したいファイル名(だけ)を登録します。w:\dirフォルダにいくつ画像があったとしても、flistに登録したファイルだけが添付されることに注意してください。以上から、つぎのようなメールが送信されます。

なお、ファイル添付送信も、一斉送信できます。やり方は一斉送信のサンプルと同じです。

その3へ

読者になる

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

%d人のブロガーが「いいね」をつけました。