-1

私はエスカレーション追跡システムを開発しています。私のアプリケーションでは、エスカレーションの期限が近づいている場合、電子メール通知を送信する必要があります (いくつかの基準に応じて自動的に)。これは Web ベースのアプリケーションです。サーブレットjspを使用しています。電子メール通知を実現する方法を教えてください。

事前に感謝します!

4

1 に答える 1

0

Java Mail API を使用してこれを実現できます。コードで次の手順に従って電子メールを送信します。

  1. SMTP ホスト プロパティの設定

      Properties props = System.getProperties();
      props.put("mail.smtp.host", yoursmtpServer);
    
  2. セッションを取得

      Session session = Session.getDefaultInstance(props, null);
    
  3. メッセージを作成し、送信者と受信者を設定します

      Message msg = new MimeMessage(session);
      msg.setFrom(new InternetAddress(from));
      msg.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to, false));
    
  4. 件名などを設定して送信

      msg.setSubject(subject);
      msg.setText(body);
     // -- Set some other header information --
      msg.setHeader("X-Mailer", "ABCMail");
      msg.setSentDate(new Date());
     // -- Send the message --
      Transport.send(msg);
    

お役に立てると思います。

編集:サーブレットフィルターまたは任意のタイマーを使用してロジックを確認できます。

タイマーロジック。

  • ScheduledThreadPoolExecutor を使用してタイマーを実装します。
  • Runnable を実装してタスクを作成します。
  • run() にロジックを入れます
  • timer.schedule(タスク、1、TimeUnit.DAYS);
于 2012-04-12T09:19:01.320 に答える