特徴:フロントエンドがバックグラウンドに提出し、特定の情報を埋めるために、背景情報はデータベースに保存され、関連情報は、管理者にメッセージを送信します
本体:
図1に示すように、コントローラ層
@ResponseBody @RequestMapping(値 =、メソッド=「送信」RequestMethod.POSTを) 公衆結果は(SomeInfo someInfo)を提出{ // SomeInfo:に送信エンティティクラス値 結果=結果新しい新しい(結果を); // 戻り値独自の定義 結果= TheService.submit(someInfo); //は、データベースに保存され たIF(result.isSuccess){ // メール送信、成功したセーブ Sendmailの送信= 新新のSendmail(someInfoを); // スレッドを起動し、スレッドが開始された後に実行されますメッセージを送信する方法は、実行 ; send.start() } の戻りの検索結果を; }
2、Sendmailのクラス
パッケージcom.bfweb.util; インポートjava.util.Properties; インポートjavax.mail.Messageの、 インポートのjavax.mail.Session; インポートjavax.mail.Transport; インポートjavax.mail.internet.InternetAddress; インポートJavax.mail.internet .MimeMessage; インポートjavax.mail.internet.MimeUtility; インポートcom.bfweb.view.SomeInfo; パブリック クラス Sendmailの拡張スレッド{ プライベート =「[email protected]」から文字列を; //は、管理者のメールボックスにメッセージを送信するために使用 プライベート文字列名=「xxxMailName」; // メールボックスユーザー名 プライベート文字列のパスワード=「パスワード」; // メールボックスのパスワード プライベート =「mail.xx.com」文字列ホスト; // メールサーバーのアドレスを送信するには、運用、保守を依頼し、私は私達の会社の使用 プライベートSomeInfo someInfoを、 公衆sendmailの(someInfo someInfo){ この .someInfo = someInfo; } / * メソッドを実行オーバーライド実装では、ユーザ指定の方法にメール実行を送る *#java.lang.Threadの実行()@see * / 公共 ボイド(ラン){ 試み{ プロパティの小道具 = 新しい新しいプロパティ(); prop.setProperty( "mail.host" 、ホスト); prop.setProperty( "mail.transport.protocol"、 "SMTP" )。 prop.setProperty( "mail.smtp.auth"、 "真" ); セッションsession = Session.getInstance(プロパ)。 session.setDebug(真の); 輸送TS = session.getTransport()。 ts.connect(ホスト、ユーザ名、パスワード); メッセージmessage = createEmail(セッション、operationView)。 ts.sendMessage(メッセージ、message.getAllRecipients())。 ts.close(); } キャッチ(例外e){ スロー 新しいですのRuntimeException(e)前記 } } 公共メッセージcreateEmail(セッションセッション、SomeInfo someInfo)をスロー例外{ で、MimeMessageメッセージは = 新しいで、MimeMessage(セッション)。 message.setFrom(新たInternetAddress(から)); message.setRecipient(Message.RecipientType.TO、新たInternetAddress( "[email protected]")); // [email protected] message.setSubject(MimeUtility.encodeText( "邮件提醒"、MimeUtility.mimeCharset( "GB2312")、ヌル)); 文字列情報 = "コード:%sの<BR>" + "名:%sの<BR>" + " "電子メール:%sの<BR>" + "管理URL:<a href='%s'>%sの</a>を<BR>" 。 情報 = String.Formatの(情報、someInfo.getCode()、someInfo.getName()、someInfo.getGender()、someInfo.getEmail()、 "https://www.baidu.com/"、 "点击进入后台" ); message.setContent(情報、 "text / htmlの;のcharset = UTF-8" ); message.saveChanges(); リターン・メッセージ。 } }
参考ブログ:
電子メールメッセージを作成して送信するために使用のJavaMail - - 1は、JavaWebの研究は(52)を締結し孤高の狼-ブログパーク
https://www.cnblogs.com/xdp-gacl/p/4216311.html
2、Javaプログラムが指定したメールボックスにメッセージを送信する- v_yang_guang_vコラム- CSDNのブログ
https://blog.csdn.net/v_yang_guang_v/article/details/45001075
3、メールサービスのリターンコードの意味- CSDNブログ- weixin_34256074さんのブログ
https://blog.csdn.net/weixin_34256074/article/details/86168513