spring環境,還要引入一個jar
<!-- https://mvnrepository.com/artifact/javax.mail/com.springsource.javax.mail -->
<dependency>
<groupId>javax.mail</groupId>
<artifactId>com.springsource.javax.mail</artifactId>
<version>1.4.0</version>
</dependency>
public class EmailUtil {
/** 讀取配置文件,封裝的讀取配置文件 */
private static Properties mailProperties = PropertyLoader.getPropertyByPath(Constants.CONFIG_FILE_PATH + "mail.properties");
/** PORT 參數 25 */
private static final Integer PORT = Integer.valueOf(mailProperties.getProperty("mail.sender.port").trim());
/** host ,郵件服務器域名*/
private static final String MAIL_SMTP_HOST = mailProperties.getProperty("mail.smtp.host").trim();
/** user_name,發郵件的郵箱 */
private static final String USER_NAME = mailProperties.getProperty("mail.sender.username").trim();
/** passWord,密碼 */
private static final String PASS_WORD = mailProperties.getProperty("mail.sender.password").trim();
/** 初始化郵件發送實體 */
private static final JavaMailSenderImpl mailSend = createMailSender();
/** 初始化消息 */
private static final MimeMessage mimeMessage = mailSend.createMimeMessage();
/** 郵件助手 */
private static MimeMessageHelper mimeMessageHelper;
/** 初始化消息助手 */
static{
try {
mimeMessageHelper = new MimeMessageHelper(mimeMessage,true,"UTF-8");
mimeMessageHelper.setFrom(USER_NAME);
} catch (MessagingException e) {
e.printStackTrace();
}
}
//初始化郵件實體
private static JavaMailSenderImpl createMailSender(){
JavaMailSenderImpl sender = new JavaMailSenderImpl();
sender.setHost(MAIL_SMTP_HOST);//發送主機
sender.setPort(PORT);
sender.setUsername(USER_NAME);//發送郵箱
sender.setPassword(PASS_WORD);//密碼
sender.setDefaultEncoding("utf-8");
Properties p = new Properties();
p.setProperty("mail.smtp.timeout","25000");
//是否需要密碼。
p.setProperty("mail.smtp.auth","true");
sender.setJavaMailProperties(p);
return sender;
}
/**
*
* 發送郵件
*
* @param orgName
* 郵件名稱
* @param letter
* 郵件內容 純文本
* @param html
* html格式 最好和純文本其中一個爲空串,否則可能會導致郵件格式混亂
* @param email
* 郵箱地址
*/
public static void sendEmail(String orgName, String letter,String html, String email) {
if (StringUtils.isBlank(orgName) || StringUtils.isBlank(email)) {
return;
}
//不允許都爲null和空串。
if (StringUtils.isBlank(letter) && StringUtils.isBlank(html)) {
return;
}
if (!validateEmail(email)) {
return;
}
//進行配置
try {
mimeMessageHelper.setTo(email);
mimeMessageHelper.setSubject(orgName);
mimeMessageHelper.setText(letter,html);
mailSend.send(mimeMessage);
} catch (MessagingException e) {
System.out.println("-------------郵件發送異常------------");
}
}
}