本文實(shí)例講述了java實(shí)現(xiàn)基于SMTP發(fā)送郵件的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
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 ); /** * 發(fā)送郵件 * * @param smtp * SMTP服務(wù)器 * @param user * 用戶名 * @param password * 密碼 * @param subject * 標(biāo)題 * @param content * 郵件內(nèi)容 * @param from * 發(fā)件人郵箱 * @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); //發(fā)件人的郵件地址 message.setFrom(fromAddress); //設(shè)置發(fā)件人 InternetAddress toAddress = new InternetAddress(to); //收件人的郵件地址 message.addRecipient(Message.RecipientType.TO, toAddress); //設(shè)置收件人 message.setSubject(subject); //設(shè)置標(biāo)題 message.setText(content); //設(shè)置內(nèi)容 message.setSentDate( new Date()); //設(shè)置發(fā)信時間 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( "郵件發(fā)送成功" ); } catch (Exception e) { logger.warn( "郵件發(fā)送失敗" , e); } } } |
希望本文所述對大家的java程序設(shè)計(jì)有所幫助。