メールボックス機能について

0x001は、分析を必要とします

  

0x002書き込みコード

サーブレット

@WebServlet( "/ activeUserServlet")
パブリッククラスのHttpServlet {延びActiveUserServlet 
    のdoPost(HttpServletRequestのリクエスト、HttpServletResponseの応答)はServletExceptionが、IOExceptionが{スロー空隙保護
        。// 1を起動得るために
        、文字列= request.getParameterコード( "コード")
        IF( !コード= NULL){ 
            // 2は、活性化を完了するためにサービスを呼び出す。
            UserServiceの新たな新しいサービスUserServiceImpl =(); 
            フラグにブール= service.active(コード); 

            .. 3 //決意フラグ
            列MSG = NULL; 
            IF(フラグに){ 
                //成功した起動
                MSG = "<aは</a>にログhref='login.html'>、正常に活性化された"; 
            }他{ 
                //アクティベーションに失敗しました
                MSG = "激活失败、请联系管理员!"。
            } 
            response.setContentType( "テキスト/ HTML;のcharset = UTF-8"); 
            response.getWriter()(MSG)を書き込みます。
        } 

    } 

    保護されたボイドのdoGet(HttpServletRequestのリクエスト、HttpServletResponseの応答)ServletExceptionがは、IOException {スロー
        this.doPost(要求、応答)。
    } 
}

  0x003ServiceImpl

    / ** 
     *登録されたユーザ
     * @paramユーザー
     * @return 
     * / 
    @Override 
    パブリックブールREGIST(ユーザーユーザー){ 
        // 1ユーザ名に基づいてユーザ・オブジェクトに問い合わせる。。
        ユーザーU = userDao.findByUsername(user.getUsername()); 
        / / Uがヌルか否かが判断される
        場合には(!U = NULL){ 
            //ユーザ名、登録に失敗しました
            ;偽に戻る
        } 
        // 2ストアユーザ情報。
        アクティベーションコード//2.1、一意の文字列設けられている
        user.setCode(UuidUtil.getUuidを()); 
        //2.2活性化状態に設定
        user.setStatus( "N"); 
        userDao.save(ユーザ); 

        // 3活性化メール、メッセージボディを?

        文字列の内容= "<a href='http://localhost/travel/user/active?code="+user.getCode()+"'>点击激活</a>を"; 

        MailUtils.sendMail(user.getEmail()、コンテンツ、 "激活邮件"); 

        trueを返します。
    }

    0x004

    / ** 
     *指定したユーザーの活性化状態を変更する
     * @paramユーザー
     * / 
    @Override 
    ます。public void UpdateStatusを(ユーザーユーザー){ 
        文字列のSQLが= "UID = SETのtab_userのアップデートステータス= 'Y'?"; 
        Template.update(SQL、ユーザー.getUid()); 
    }  

別のメールボックス異なるコードを見つけるために、MailUtilツール動画、ランダムなラインと何が重要であるメール機能があると見て、注意を払う必要があります。

ツールの下に投稿MailUtil

/ ** 
 *メールツールは、
 * / 
パブリッククラスMailutilsに最終的な{ 
    プライベート静的USER最終文字列=「」; //送信者の名前、同じ電子メールアドレス
    プライベート静的最終文字列PASSWORD =「」 ; // メールボックスができる場合QQクライアント認証コード、またはパスワード

    / ** 
     * 
     *受信者のメールボックスに@param 
     * @paramテキストメッセージ本文
     * @paramタイトルタイトル
     * / 
    * / / *送信確認メールメッセージ
    のpublic static boolean型のsendmail(文字列へ、テキスト文字列、文字列のタイトル){ 
        試み{ 
            最終的な性質の小道具=新しい新しいプロパティ(); 
            props.put( "mail.smtp.auth"、 "真の"); 
            props.put( "mail.smtp.host"、「SMTP .qq.com ");
 
            //送信者のアカウント
            props.put( "mail.user"、USER); 
            //送信者のパスワード
            props.put( "mail.password"、PASSWORD); 

            //は、SMTP認証のためのライセンス情報を構築し
            、新たな認証認証=オーセンティケータ(){ 
                @Overrideは
                PasswordAuthenticationをgetPasswordAuthentication(){保護
                    //ユーザ名、パスワード
                    文字列props.getPropertyのuserName =( "mail.user"); 
                    文字列のパスワード= props.getProperty( "mail.passwordを"); 
                    (新しい新しいPasswordAuthenticationのを返しますユーザ名、パスワード); 
                } 
            }; 
            //環境属性および許可情報は、メールセッションを作成します
            MailSession = Session.getInstanceセッション(小道具、認証); 
            //メールメッセージの作成
            で、MimeMessageメッセージ=新新のMimeMessage(mailSessionを); 
            //メッセージ本文の内容を設定
            、message.setContent(テキストを"テキスト/ HTML ;のcharset = UTF-8");
            //設定し、送信元
            の文字列名= props.getProperty( "mail.user"); 
            たInternetAddressフォーム=新しい新たInternetAddress(ユーザー名); 
            message.setFrom(フォーム); 

            //受信者の設定し
            たInternetAddressのtoAddress =新たInternetAddress(に) ; 
            message.setRecipient(Message.RecipientType.TO、toAddress); 

            //設定メールヘッダ
            message.setSubject(タイトル); 

            //メッセージを送る
            Transport.send(メッセージ); 
            trueに戻る; 
        }キャッチ(例外E){ 
            e.printStackTrace (); 
        } 
        偽に戻ります; 
    }

    公共の静的な無効メイン(文字列[]引数)例外{//スロー行う試験
        MailUtils.sendMail(「[email protected]」、「こんにちは、これはテストメッセージ、無応答である。」、「テストメッセージを」 ); 
        のSystem.out.println( "正常に送信"); 
    } 



}

  

 

 

  

おすすめ

転載: www.cnblogs.com/money131/p/11515647.html