最近、オンラインモールを勉強していたとき、メールを送信する機能に出会いました。メールアドレスを使用して以前にメールを送信していましたが、どのように機能するかわかりません。では、メールで何が起こっているのでしょうか?
電子メール送信プロセス:
プロセスの説明:最初に、送信者はクライアントソフトウェアを介して特定のサーバーに電子メールを送信し、電子メールSimple Transfer Protocol(SMTP)を介して送信します。受信者は、POP3プロトコルを介してサーバーから電子メールを受け入れます。これにより、電子メール間の相互送信が可能になります。
実装プロセス:
インターネットアクセスの場合、SOHU、NetEase、その他の電子メールを使用して送信することができます。それでは、ネットワークなしで内部伝送を実現するにはどうすればよいですか?
まず、サーバーをインストールして構成する必要があります。ビデオでは、簡単なメールサーバーを使用しています。このソフトウェアのインストールは比較的簡単です。インストールが成功した後、次のように障害プロンプトがあります。
この問題は影響を受けていません(まだ問題は発生していません)私たちの機能は無視できます。インストールが完了したら、構成する必要があります。最初にサーバー設定、オープンツールを実行 - >サーバー設定:独自のサーバーアドレスのドメイン名を設定します(neteaseのドメイン名と同様に、使用しました163.com)
次に、新しいアカウントを追加します:名前とパスワードを設定します
追加後の効果は次のとおりです。
サーバーの構成が完了すると、クライアントがインストールされ、構成されます。 FoxMailの最新バージョンがインストールされているため、混乱を引き起こさないために、FoxMail6.5でセットアップされ、インストールプロセスは説明されなくなります。
まず、新しいユーザーアカウントを追加する必要があります(インストールプロセス中に既にテストを設定しているユーザーが再度追加する必要はありません)、次のようにテストアカウントに記入してください。
[次へ]をクリックして、サービスの種類とサーバーを設定します。こちらのサーバー構成に注意してください。ローカルでメールを送信しているため、送信および送信メールサーバーはlocalhost:localhostに設定されます。
セットアップ後、次のステップはテストすることです。
成功後、構成は閉じられ、構成は基本的に完了します
この構成プロセス中に、次のように注意する必要があります。
1.サーバーのドメイン名を構成し、アカウントを追加する
2.クライアントを構成する場合、受信サーバーアドレス、サーバータイプ、その他の問題の設定に注意してください。
この時点で、電子メールを送信するために必要な環境が構成されており、特定のコード実装プロセスを次の記事で詳しく紹介します。この調査を通じて、電子メールサービスの基本原則と電子メールを送信するプロセスについて学びました。同時に、一部のサーバー設定、ドメイン名、およびタイプを新しい理解してくれました。 Foxmailが以前に機能しなかったという問題に遭遇しましたが、今では基本的に問題がどこにあるかを知っています。知識は常に継続的な実践を通じて得られ、継続的な繰り返しの学習とトレーニングが必要です。
上記は基本的に、送信の原則と電子メールサービスの構成方法について説明しています。以下は、主に電子メールを送信する特定の実装プロセスについて説明しています。
コード実装送信プロセスは、主に3つのステップに分割されます。
最初のステップは、接続を取得し、Javaのプロパティクラスを介して構成ファイルを読み取り、基本設定と接続設定を実行するためにベースクラスのいくつかの方法を呼び出すことです。
//接続プロパティを取得= new Properties(); //プロパティはJavaの重要なクラスであり、主にJava構成ファイルを読み取るために使用されますAuthenticator(){@Override Protected PasswordAuthentication getPassWordAuthentication(//独自のサービスアドレスとパスワードを設定します( "[email protected]"、 "1");2番目のステップは、主にメッセージキャリアを介して情報をカプセル化するメールオブジェクトを作成することです。メッセージは抽象クラスであり、既知の実装クラスにはMimemessageが含まれます。
// 2。電子メールオブジェクトの作成メッセージ= new Mimemessage(session); //送信者を設定してください{//サーバーメッセージを設定します。 //受信者message.addrecipient(reciintienttype.to、new InternetAddress(to))を設定します。 //タイトルmessage.setsubject( "Shopping activation Email"); //電子メールボディメッセージを設定します。SetContent( "<h1>ショッピングアクティベーションメール、以下のリンクをクリックしてアクティベーション操作を完了します!</h1> <h3> <a href = 'http://192.168.21.84:8080/Shop/user_active.action?code ="+code+" '> http://192.168.21.84:8080/shop/user_active.action = "+code+" </a> </h3> "、" text/html; charset = utf-8 ");3番目のステップは、メールを送信することです
//3。メールTransport.send(メッセージ)を送信します。このようにして、メールの送信プロセスが実装され、メインメソッドがこのクラスで定義されます:public static void main(string [] args){//送信されるオブジェクトと検証コードsendmail( "[email protected]"、 "111111111"); }サービスレイヤーでメールを送信する方法を呼び出すだけです://アクティベーションメールMailuitls.sendmail(user.getEmail()、code);特定の知識の蓄積:
1。プロパティは主に構成ファイル情報を取得します。主な方法には、getProperty(String Key)、Load(inputStream insteam)、setProperty(string key、string value)、store(outputstream out、string comments)、clear()が含まれます。
2。セッションは構成情報のコレクションであり、その主な機能は、さまざまな構成属性情報を受信し、Javamail環境を初期化することです。
3。メッセージは、インターフェイスパーツを実装し、いくつかのプロパティを定義する抽象クラスです
4。輸送とは、ストアストレージ機能に対応する電子メールの送信を指します。
機能は実装されていますが、使用されるクラスの一部は、詳細な学習と研究が必要です。今のところ、私は始めただけで、Javamailでは、プロパティ、セッション、メッセージなどのいくつかの重要なクラスがあることを知っています。
上記はこの記事に関するものです。すべての人の学習に役立つことを願っています。