我正在尝试在JSP中发送电子邮件,但看起来我必须手动设置SMTP服务器而不像PHP(PHP使用sendmail)。
我对JSP有哪些选择?
答案 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);