什么是JSP中的sendmail等价物?

时间:2011-08-15 22:10:09

标签: jsp sendmail

我正在尝试在JSP中发送电子邮件,但看起来我必须手动设置SMTP服务器而不像PHP(PHP使用sendmail)。

我对JSP有哪些选择?

2 个答案:

答案 0 :(得分:2)

你最好的选择,对于纯JSP而言,只是将Java用于电子邮件,但更好的方法是编写自己的标签来发送电子邮件,因为我认为将如此多的代码放入JSP页面是一个糟糕的设计。 / p>

这是一篇包含更多代码的精彩文章,但基本思路将遵循:

http://www.java-samples.com/showtutorial.php?tutorialid=675

Message msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress(from));
InternetAddress[] address = {new InternetAddress(to)};
msg.setRecipients(Message.RecipientType.TO, address);
msg.setSubject(subject);
msg.setText(messageText);

Transport.send(msg);

对于可能有点过时的文章,但是应该给你足够的信息来自己做,在JSP标签和电子邮件上你可以读到:

http://java.sun.com/developer/technicalArticles/javaserverpages/emailapps/

答案 1 :(得分:0)

在Java应用服务器中,您可以通过两种基本方式访问smtp服务器:

通过JNDI查找,如果您的应用服务器中配置了邮件服务器(以下示例适用于JBoss):

Session ms = (Session) new InitialContext().lookup("java:/Mail");

直接设置Session

Properties props = new Properties();
props.setProperty("mail.smtp.host", "mySmtpHost");
session = Session.getInstance(props);