1.首先在maven坐标中导入jar包
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.5</version>
</dependency>2.工具类
public class EmailUtil {
/**
* @param msgSubject 设置标题
* @param msgText 编辑内容
* @param sendAddress 接收方的邮箱地址
* @return
*/
public static boolean sendMessage(String msgSubject,String msgText,String sendAddress){
Properties props = new Properties();
props.setProperty("mail.debug","true"); // 开启debug调试
props.setProperty("mail.smtp.auth","true"); // 发送服务器需要身份验证
props.setProperty("mail.host",""); // 设置邮件服务器主机名
props.setProperty("mail.transport.protocol","smtp"); // 发送邮件协议名称
Transport transport =null;
try {
MailSSLSocketFactory mailSSLSocketFactory = new MailSSLSocketFactory();// 开启SSL加密,否则会失败
mailSSLSocketFactory.setTrustAllHosts(true);
props.put("mail.smtp.ssl.enable", "true");
props.put("mail.smtp.ssl.socketFactory", mailSSLSocketFactory);
Session session = Session.getInstance(props);
MimeMessage msg = new MimeMessage(session);
msg.setSubject(msgSubject);
msg.setContent(msgText,"text/html;charset=UTF-8");
msg.setFrom(new InternetAddress("发送方的qq邮箱地址")); // 发送的邮箱地址
transport = session.getTransport();
transport.connect("","发送方的qq邮箱地址","授权码");//授权码代替密码(更安全)
transport.sendMessage(msg,new Address[]{new InternetAddress(sendAddress)});
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
} finally {
if (transport!=null) {
try {
transport.close();
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
}
}3.测试类
public class SendEmailTest{
@Test
public void testSendEmail(){
if (EmailUtil.sendMessage("title", "content", "接收方的邮箱地址")) {
System.out.println("邮件发送成功!");
}else {
System.out.println("邮件发送失败!");
}
}
}
















