packagetop.hzelin.util;importjava.io.IOException;importjava.io.InputStream;importjava.util.Properties;importjavax.mail.BodyPart;importjavax.mail.Message;importjavax.mail.MessagingException;importjavax.mail.Multipart;importjavax.mail.Session;importjavax.mail.Transport;importjavax.mail.internet.InternetAddress;importjavax.mail.internet.MimeBodyPart;importjavax.mail.internet.MimeMessage;importjavax.mail.internet.MimeMultipart;public classSendMailUtils {private static String from = "";private static String user = "";private static String password = "";/** 读取属性文件的内容,并为上面上个属性赋初始值*/
static{
Properties prop= newProperties();
InputStream is= SendMailUtils.class.getClassLoader().getResourceAsStream("email.properties");try{
prop.load(is);
from= prop.getProperty("from");
user=prop.getProperty("username");
password=prop.getProperty("password");
}catch(IOException e) {
e.printStackTrace();
}
}public static voidsendMail(String to,String text,String title) {
Properties props= newProperties();
props.setProperty("mail.smtp.host", "smtp.163.com");//设置邮件服务器主机名
props.put("mail.smtp.host", "smtp.163.com");
props.put("mail.smtp.auth", "true");//发送服务器需要身份验证
Session session = Session.getDefaultInstance(props);//设置环境信息
session.setDebug(true);
MimeMessage message= newMimeMessage(session);
Multipart multipart= null;
BodyPart contentPart= null;
Transport transport= null;try{
message.setFrom(from);//设置发件人
message.addRecipient(Message.RecipientType.TO, newInternetAddress(to));
message.setSubject(title);
multipart= new MimeMultipart();//设置附件
contentPart = newMimeBodyPart();
contentPart.setContent(text,"text/html;charset=utf-8");
multipart.addBodyPart(contentPart);
message.setContent(multipart);
message.saveChanges();
transport= session.getTransport("smtp");
transport.connect("smtp.163.com", user, password);
transport.sendMessage(message, message.getAllRecipients());
}catch(MessagingException e) {
e.printStackTrace();
}finally{try{
transport.close();
}catch(MessagingException e) {
e.printStackTrace();
}
}
}
}