maven pom
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
</dependency>
發送郵件的方法
/**
* 發送QQ郵件
* @param from 發件人
* @param to 收件人
* @param password 密碼/授權碼
* @param subject 主題
* @param content 內容
* @param debug 是否打印調試信息
* @throws Exception
*/
public void send(String from, String to, String password, String subject, String content, boolean debug) throws Exception{
Properties properties = new Properties();
if(debug){
properties.setProperty("mail.debug", "true");
}
properties.setProperty("mail.smtp.auth", "true");
properties.setProperty("mail.transport.protocol", "smtp");
properties.setProperty("mail.smtp.host", "smtp.qq.com");
properties.put("mail.smtp.ssl.enable", true);
MailSSLSocketFactory mailSSLSocketFactory = new MailSSLSocketFactory();
mailSSLSocketFactory.setTrustAllHosts(true);
properties.put("mail.smtp.ssl.socketFactory", mailSSLSocketFactory);
Session session = Session.getInstance(properties);
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject(subject);
message.setText(content);
Transport transport = session.getTransport();
transport.connect(from, password);
transport.sendMessage(message, message.getAllRecipients());
transport.close();
}
運行結果
/**
* from
*/
public static final String SENDER_ADDRESS = "[email protected]";
/**
* to
*/
public static final String RECIEVE_ADDRESS = "[email protected]";
/**
* auth code
*/
public static final String AUTH_CODE = "aguwwkbojsct****";
@Test
public void test() throws Exception{
send(SENDER_ADDRESS, RECIEVE_ADDRESS, AUTH_CODE, "test", "測試", true);
}