在Ubuntu下使用JSP实现邮件发送,通常需要以下几个步骤:
sudo apt update
sudo apt install openjdk-11-jdk
sudo apt update
sudo apt install tomcat9
sudo apt update
sudo apt install postfix
在安装过程中,选择"Internet Site"作为配置类型,并设置系统邮件名称。完成安装后,启动Postfix服务:
sudo systemctl start postfix
sudo systemctl enable postfix
<%@ page import="javax.mail.*, javax.mail.internet.*" %>
<%@ page import="java.util.*" %>
<%
String to = request.getParameter("to");
String subject = request.getParameter("subject");
String message = request.getParameter("message");
// 邮件发送者的邮箱和密码
String fromEmail = "your_email@example.com";
String password = "your_password";
// 配置邮件发送参数
Properties properties = new Properties();
properties.put("mail.smtp.host", "localhost");
properties.put("mail.smtp.port", "25");
properties.put("mail.smtp.auth", "true");
// 创建会话对象
Session session = Session.getInstance(properties, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(fromEmail, password);
}
});
try {
// 创建邮件消息对象
MimeMessage mimeMessage = new MimeMessage(session);
mimeMessage.setFrom(new InternetAddress(fromEmail));
mimeMessage.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
mimeMessage.setSubject(subject);
mimeMessage.setText(message);
// 发送邮件
Transport.send(mimeMessage);
out.println("邮件发送成功");
} catch (MessagingException e) {
e.printStackTrace();
out.println("邮件发送失败");
}
%>
注意:在实际应用中,建议使用更安全的方式存储和管理邮件发送者的邮箱和密码,例如使用配置文件或环境变量。同时,可以考虑使用第三方邮件发送服务(如SendGrid、Mailgun等)来提高邮件发送的成功率和稳定性。