java实现基于SMTP发送邮件的方法
程序员文章站
2024-03-04 17:46:42
本文实例讲述了java实现基于smtp发送邮件的方法。分享给大家供大家参考。具体实现方法如下:
import java.util.date;
import ja...
本文实例讲述了java实现基于smtp发送邮件的方法。分享给大家供大家参考。具体实现方法如下:
import java.util.date; import java.util.properties; import javax.mail.authenticator; import javax.mail.message; import javax.mail.passwordauthentication; import javax.mail.session; import javax.mail.transport; import javax.mail.internet.internetaddress; import javax.mail.internet.mimemessage; import org.apache.log4j.logger; public class mailutil { private static logger logger = logger.getlogger(mailutil.class); /** * 发送邮件 * * @param smtp * smtp服务器 * @param user * 用户名 * @param password * 密码 * @param subject * 标题 * @param content * 邮件内容 * @param from * 发件人邮箱 * @param to * 收件人邮箱 */ public static void send(string smtp, final string user, final string password, string subject, string content, string from, string to) { try { properties props = new properties(); props.put("mail.smtp.host", smtp); props.put("mail.smtp.auth", "true"); session ssn = session.getinstance(props, new authenticator() { @override protected passwordauthentication getpasswordauthentication() { return new passwordauthentication(user, password); } }); mimemessage message = new mimemessage(ssn); //由邮件会话新建一个消息对象 internetaddress fromaddress = new internetaddress(from); //发件人的邮件地址 message.setfrom(fromaddress); //设置发件人 internetaddress toaddress = new internetaddress(to); //收件人的邮件地址 message.addrecipient(message.recipienttype.to, toaddress); //设置收件人 message.setsubject(subject); //设置标题 message.settext(content); //设置内容 message.setsentdate(new date()); //设置发信时间 transport transport = ssn.gettransport("smtp"); transport.connect(smtp, user, password); transport.sendmessage(message, message .getrecipients(message.recipienttype.to)); // transport.send(message); transport.close(); logger.info("邮件发送成功"); } catch (exception e) { logger.warn("邮件发送失败", e); } } }
希望本文所述对大家的java程序设计有所帮助。