之前从未使用过Java邮件。
在我的JSF Web应用程序中,我有一个实体(followUp)
,其属性private Date checkDate;
对应于Animal
实体。 (动物有很多后续记录)。否则:
用户必须每3个月在{followUp}
中创建一条新记录并将其标记为已选中,并提供其操作日期“checkDate”。但由于用户非常懒惰,他只为少数动物做到了这一点。
因此,他实际上希望通过电子邮件通知未检查超过3个月的动物。
示例:我在2011年1月1日创建了动物'A'的followUp
记录,然后在大约01/04/2011,用户收到一封电子邮件,提醒他去检查动物B的后续行动。
Web应用程序正在本地企业网络上运行。
我所知道的就是那个片段:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
class SimpleMail {
public static void main(String[] args) throws Exception{
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.host", "mymail.server.org");
props.setProperty("mail.user", "emailuser");
props.setProperty("mail.password", "");
Session mailSession = Session.getDefaultInstance(props, null);
Transport transport = mailSession.getTransport();
MimeMessage message = new MimeMessage(mailSession);
message.setSubject("Testing javamail plain");
message.setContent("This is a test", "text/plain");
message.addRecipient(Message.RecipientType.TO,
new InternetAddress("elvis@presley.org"));
transport.connect();
transport.sendMessage(message,
message.getRecipients(Message.RecipientType.TO));
transport.close();
}
}
为此目的,我应该创建一个Servlet过滤器,一个监听器,一个应用程序Scoped支持bean吗?一个循环followUp
记录并返回最后一条记录的checkDate并将其与今日日期进行比较的查询?
任何帮助都可以。问候。