ホームページ  >  記事  >  Java  >  Java電子メール

Java電子メール

王林
王林オリジナル
2024-08-30 16:21:59792ブラウズ

Java プロセスを介して電子メールを送信することは、シンプルで簡単なプロセスです。このプロセスはインスタントプロセスであり、Java ベースの電子メールプロセスの 2 つの必須アイテムは JavamailAPI と JAF フレームワークです。これらは、Java で電子メールを送信するための 2 つの主要なセクションです。これらのセクションにより、Java ベースのアプリケーションでの電子メール送信プロセスがより簡単になります。 Java メール API と JAF は両方とも、Java 標準 Web サイトからダウンロードできます。 smtp サーバーは電子メールの送信にも使用できます。この SMTP サーバーの使用は、電子メール生成の代替方法です。ポッドキャスト サーバーや Apache James サーバーなどの SMTP サーバーをインストールして使用することも、同様の代替方法です。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

Java で電子メールを送信する手順

メール送信の主な手順は次のとおりです。

1) セッションオブジェクトの取得。
2) 送信するメッセージを作成します。
3) メッセージを送信します。

これらの各ステップについて詳しく説明します。セッション オブジェクトを取得する最初のステップでは、セッション ベースのオブジェクトを取得します。作成されたすべてのセッションには、オブジェクトが関連付けられている場合があります。これらのオブジェクトは、セッションに関連付けられた情報と密接に結合されます。セッションに対応するオブジェクトを取得するには、javax. mail.Session クラスを使用する必要があります。このクラスには、オブジェクト インスタンスの詳細を取得するための 2 つの異なるメソッドがあります。したがって、オブジェクト インスタンスの詳細を取得するには、Session という 2 つの組み込みメソッドが使用されます。 getdefaultinstance() メソッドとセッション。 getinstance() メソッド。これらは、関連付けられたオブジェクトの詳細を取得するための 2 つの主要なメソッドです。このような場合、セッション オブジェクト自体を取得するには、以下のメソッドのいずれかを使用できます。

s.no Method details Description
1 public static Session getDefaultInstance(Properties p) default session value will be returned
2 public static Session getDefaultInstance(Properties p,Authenticator a) default session value will be returned
3 public static Session getInstance(Properties prop) Value associated to the new session will be returned
4 public static Session getInstance(Properties prop,Authenticator a) Value associated to the new session will be returned

メッセージの構成: これは、このプロセスで考慮すべき非常に重要なステップです。このステップには、ソースからの本来の意図されたメッセージを定式化するプロセスが含まれます。したがって、このセクションは元のメッセージを扱うため、考慮すべき非常に重要なセクションです。堆肥化プロセスを実行するには、javax.mail.message が使用されます。このクラスを使用すると、メッセージを高度にフレーム化できます。このクラスは操作の抽象レベルにあるため、このクラスのサブクラスは javax.mail.internet.MimeMessage と呼ばれ、より具体的にはこのプロセスに使用されます。セッションと関連するメッセージは、コードの以下の部分を使用して積み重ねられます。したがって、このコードはメッセージとセッションの詳細を結合するために使用されます MimeMessage message=new MimeMessage(session);
メッセージの送信: このセクションの最後のプロセスは、メッセージの送信です。ジャバックス。郵便。この目的にはトランスポート クラスが使用されます。このクラスの目的は、メッセージ送信プロセスをトリガーすることです。具体的に言うと、メッセージ送信プロセスは javax を使用して非常に具体的に実現できます。具体的には mail.transport メッセージ。コーディングの観点から見ると、Transport のコード スニペットです。送信(メッセージ);はまさにこのプロセスに使用されます。

No. Method Description
1 public static void send(Message m) The given method is used for sending the message. So transport of the message can be achieved by means of this method.
2 public static void send(Message m, Address[] address) For sending the message to one specific address this method is used.

Javax メール プログラムの手順

コード:

import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class Initiateemail {
public static void main(String [] args) {
// email id of the recipient has to be mentioned in this field
String to = "[email protected]";
// email id of the sender needs to be mentioned here
String from = "[email protected]";
// Assuming you are sending email from localhost
String host = "localhost";
// All details associated to the property are mentioned here
Properties prop = System.getProperties();
// this is the step were the property setup can be eastablished
prop.setProperty("mail.smtp.host", host);
Session ses = Session.getDefaultInstance(prop);
try {
// onject associated to the message is initiated here
MimeMessage mess = new MimeMessage(ses);
// header details are decided and set here.
mes.setFrom(new InternetAddress(from));
// header field details are created here
mes.addRecipient(Mes.RecipientType.TO, new InternetAddress(to));
// subject details of the message are given here
mes.setSubject("Hello world message . . . . . . . . . . . subject starts ");
// Actual message of the email is given here
message.setText("Hello world . . . . . . . . . . . . . . . Message Ends");
// transport object is used for initiating the message
Transport.send(mes);
System.out.println("message has been sent successfully . . . . . ");
} catch (MessagingException mex) {
mex.printStackTrace();
}
}
}

出力:

Java電子メール

Java電子メール

JavaMail 添付ファイルをメールで送信

コード:

import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class SendEmail {
public static void main(String [] args) {
String to = "[email protected]";
String from = "[email protected]";
String host = "localhost";
Properties prop = System.getProperties();
prop.setProperty("mail.smtp.host", host);
Session ses = Session.getDefaultInstance(prop);
try {
MimeMessage mess = new MimeMessage(ses);
mes.setFrom(new InternetAddress(from));
mes.addRecipient(Mes.RecipientType.TO, new InternetAddress(to));
mes.setSubject("Hello world message . . . . . . . . . . . subject starts ");
message.setText("Hello world . . . . . . . . . . . . . . . Message Ends");
mp.addBodyPart(mbp);
mbp = new MimeBodyPart();
String fl = "newfile.txt";
DataSource src= new FileDataSource(fl);
mbp.setDataHandler(new DataHandler(src));
mbp.setFileName(filename);
mp.addBodyPart(mbp);
messetContent(mp );
Transport.send(mes);
System.out.println("message has been sent successfully . . . . . ");
} catch (MessagingException mex) {
mex.printStackTrace();
}
}
}

出力:

Java電子メール

Java電子メール

結論

この記事では、Java 電子メール メッセージの設定方法と、電子メール メッセージの設定に関連するクラスについて説明しています。また、電子メールを送信するためのプログラムや、ファイルが添付された電子メールを送信するためのプログラムについても説明しています。

以上がJava電子メールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。