メールの自動化は、特にマーケターの間で人気を博しています。スケジュールされた時間に、ターゲットオーディエンスに事前に作成された電子メールを自動的に送信できるようにします。

Java で電子メールを送信するためのコードを作成する方法
この記事では、次の点について説明します。
メール送信用 Java ライブラリ
Java メール ライブラリ を使用します。これにより、ネットワーク プログラミングやフォーマット仕様を知らなくても、メールを管理するためのビジネス ロジックを実装できます。 電子メールを送信するための Java ライブラリは、次のように Maven 構成を使用して直接インストールできます。
<repository>
<id>ConholdateJavaAPI</id>
<name>Conholdate Java API</name>
<url>https://releases.conholdate.com/java/repo</url>
</repository>
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>23.6</version>
<type>pom</type>
</dependency>
他の Java フレームワークに関する構成については、releases.conholdate.com にアクセスしてください。
Java でメールを作成して送信するコードを作成する方法
Java 電子メール ライブラリは、配信のために SMTP サーバーを介して電子メール メッセージを送信します。送信者、受信者、件名、およびメッセージ本文は、String オブジェクトを使用して指定されます。このセクションでは、プレーン テキストと HTML 本文を含む電子メールを送信するコード サンプルを Java で記述する方法について説明します。
プレーンテキストで電子メールを送信するための Java コード
プレーン テキストの電子メール メッセージを作成して送信する手順は次のとおりです。
・MailMessageクラスのオブジェクトを作成する。
- 件名、本文、送信者、および受信者のアドレスを指定します。
- SmtpClient クラスのオブジェクトを作成します。
- ホスト、ポート、ユーザー名、パスワード、およびセキュリティ オプションを設定します。
- SmtpClient.send(MailMessage arg) メソッドを呼び出して、電子メール メッセージを送信します。
次のコード サンプルは、プレーン テキストの電子メール メッセージを作成して送信する方法を示しています。
// Declare msg as MailMessage instance | |
MailMessage msg = new MailMessage(); | |
// Set From and To field and Plain text body | |
msg.setFrom(MailAddress.to_MailAddress("sender@sender.com")); | |
msg.getTo().add("receiver@receiver.com"); | |
msg.setBody("This is a Plain Text Body"); | |
// Create an instance of SmtpClient class | |
SmtpClient client = new SmtpClient(); | |
// Specify your mailing host server, Username, Password, Port # and Security option | |
client.setHost("mail.server.com"); | |
client.setUsername("username"); | |
client.setPassword("password"); | |
client.setPort(587); | |
client.setSecurityOptions(SecurityOptions.SSLExplicit); | |
try { | |
// Client.Send will send this message | |
client.send(msg); | |
System.out.println("Message sent"); | |
} catch (Exception ex) { | |
System.err.println(ex); | |
client.close(); | |
client.dispose(); | |
} | |
client.close(); | |
client.dispose(); |
HTML 本文のメールを送信する
HTML 本文を含む電子メール メッセージを送信する手順は次のとおりです。
・MailMessageクラスのオブジェクトを作成する。
- 件名、本文、送信者、および受信者のアドレスを指定します。 ・MailMessage.setHtmlBody(String value)メソッドでメール本文を設定する。
- SmtpClient クラスのオブジェクトを作成します。
- ホスト、ポート、ユーザー名、パスワード、およびセキュリティ オプションを設定します。
- SmtpClient.send(MailMessage arg) メソッドを呼び出して、電子メール メッセージを送信します。
以下のコード サンプルは、HTML 本文を含む電子メール メッセージを送信する方法を示しています。
// Declare msg as MailMessage instance | |
MailMessage msg = new MailMessage(); | |
// Use MailMessage properties like specify sender, recipient, message and HtmlBody | |
msg.setFrom(MailAddress.to_MailAddress("newcustomeronnet@gmail.com")); | |
msg.setTo(MailAddressCollection.to_MailAddressCollection("asposetest123@gmail.com")); | |
msg.setSubject("Test subject"); | |
msg.setHtmlBody("<html><body>This is the HTML body</body></html>"); | |
// Create an instance of SmtpClient class | |
SmtpClient client = new SmtpClient(); | |
// Specify your mailing host server, Username, Password, Port # and Security option | |
client.setHost("mail.server.com"); | |
client.setUsername("username"); | |
client.setPassword("password"); | |
client.setPort(587); | |
client.setSecurityOptions(SecurityOptions.SSLExplicit); | |
try { | |
// Client.Send will send this message | |
client.send(msg); | |
System.out.println("Message sent"); | |
} catch (Exception ex) { | |
System.err.println(ex); | |
client.close(); | |
client.dispose(); | |
} | |
client.close(); | |
client.dispose(); |
Java でディスクから保存された電子メールを送信する
Java 電子メール ライブラリを使用すると、EML (Outlook Express 電子メール) ファイルをディスクから読み込んで、SMTP 経由で送信できます。
ディスクから保存された電子メール メッセージを送信する手順は次のとおりです。
・MailMessage.load(String path)メソッドでMailMessageクラスのオブジェクトを作成する。
- SmtpClient クラスのオブジェクトを作成します。
- ホスト、ポート、ユーザー名、パスワード、およびセキュリティ オプションを設定します。
- SmtpClient.send(MailMessage arg) メソッドを呼び出して、電子メール メッセージを送信します。
以下のコード サンプルは、保存された電子メールを Java でディスクから送信する方法を示しています。
// Load an EML file in MailMessage class | |
MailMessage message = MailMessage.load(dataDir + "test.eml"); | |
// Create an instance of SmtpClient class | |
SmtpClient client = new SmtpClient(); | |
// Specify your mailing host server, Username, Password, Port # and Security option | |
client.setHost("mail.server.com"); | |
client.setUsername("username"); | |
client.setPassword("password"); | |
client.setPort(587); | |
client.setSecurityOptions(SecurityOptions.SSLExplicit); | |
try { | |
// Client.Send will send this message | |
client.send(msg); | |
System.out.println("Message sent"); | |
} catch (Exception ex) { | |
System.err.println(ex); | |
client.close(); | |
client.dispose(); | |
} | |
client.close(); | |
client.dispose(); |
電子メールを一括送信する Java コード
電子メールを一括送信するための Java コードを作成する手順は次のとおりです。
- MailMessage クラスのオブジェクトを複数作成し、必要なパラメータまたはプロパティを指定します。 ・MailMessageCollectionクラスのオブジェクトを作成する。
- MailMessageCollection.addItem() メソッドを使用して、メール メッセージ オブジェクト (最初のステップで作成したもの) をコレクションに追加します。
- SmtpClient クラスのオブジェクトを作成します。ホスト、ポート、ユーザー名、およびパスワードを設定します。
- SmtpClient.send(MailMessageCollection arg) メソッドを使用してメールを送信します。
以下のコード サンプルは、Java を使用して電子メールを一括送信する方法を示しています。
// Create SmtpClient as client and specify server, port, user name and password | |
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password"); | |
// Create instances of MailMessage class and Specify To, From, Subject and Message | |
MailMessage message1 = new MailMessage("msg1@from.com", "msg1@to.com", "Subject1", "message1, how are you?"); | |
MailMessage message2 = new MailMessage("msg1@from.com", "msg2@to.com", "Subject2", "message2, how are you?"); | |
MailMessage message3 = new MailMessage("msg1@from.com", "msg3@to.com", "Subject3", "message3, how are you?"); | |
// Create an instance of MailMessageCollection class and add MailMessage objects | |
MailMessageCollection manyMsg = new MailMessageCollection(); | |
manyMsg.addItem(message1); | |
manyMsg.addItem(message2); | |
manyMsg.addItem(message3); | |
try { | |
// Send Message in bulk | |
client.send(manyMsg); | |
System.out.println("Message sent"); | |
} catch (Exception ex) { | |
System.err.println(ex); | |
client.close(); | |
client.dispose(); | |
} | |
client.close(); | |
client.dispose(); |
無料ライセンスを取得する
無料の一時ライセンス を取得して、評価制限なしで API を試すことができます。
まとめ
この記事では、電子メールを送信するための Java ライブラリを使用して、Java で電子メールを送信するためのコードを記述する方法についての知識を得ました。最初に、プレーン テキストまたは HTML 本文の電子メールをプログラムで送信する方法を学びました。その後、電子メールを一括送信する方法と、Java を使用してディスクから保存された電子メールを送信する方法を見てきました。
ドキュメント にアクセスして、他の機能を調べることができます。
最後に、conholdate.com で定期的な更新をチェックすることをお勧めします。
質問する
フォーラムでご質問やご質問をお知らせください。