/**
* 发送邮件
*
* @param mailInfo
* @param isTextType 是否是文本
*
* @throws Exception
*/
public static boolean send(final MailInfo mailInfo, boolean isTextType) throws Exception {
try {
//添加邮件属性
Properties prop = new Properties();
prop.put("mail.smtp.host", mailInfo.getMailServerHost());
prop.put("mail.smtp.auth", "true");
// prop.put("mail.smtp.timeout", "-1");
//验证密码
Authenticator authenticator = new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(mailInfo.getUserName(), mailInfo.getPassword());
}
};
//获取 Email Session实例
Session session = Session.getInstance(prop, authenticator);
//内容设置
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(mailInfo.getFromAddress()));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(mailInfo.getToAddress()));
message.setSubject(mailInfo.getSubject());
if (isTextType) {
message.setContent(mailInfo.getContent(), "text/plain;charset=UTF-8");
} else {
message.setContent(mailInfo.getContent(), "text/html;charset=utf-8");
}
message.setSentDate(new Date());
//传输
Transport tran = session.getTransport("smtp");
try {
Transport.send(message, message.getAllRecipients());
} finally {
tran.close();
}
} catch (MessagingException e) {
e.printStackTrace();
return false;
}
return true;
}