java完成基於SMTP發送郵件的辦法。本站提示廣大學習愛好者:(java完成基於SMTP發送郵件的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是java完成基於SMTP發送郵件的辦法正文
本文實例講述了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法式設計有所贊助。