package com.letv.uts.controlCenter.utils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
public class EmailUtil {
private static final Logger log = LoggerFactory.getLogger(EmailUtil.class);
private static EmailUtil emailUtil = null;
public ApplicationContext ctx = null;
private EmailUtil() {
//获取上下文
ctx = new ClassPathXmlApplicationContext("spring-mail-autowire.xml");
}
/**
* @function:获得单例
*/
public static EmailUtil getInstance() {
if (emailUtil == null) {
synchronized (EmailUtil.class) {
if (emailUtil == null) {
emailUtil = new EmailUtil();
}
}
}
return emailUtil;
}
public void sentEmails(String emails, String subject, String text) {
//获取JavaMailSender bean
JavaMailSender sender = (JavaMailSender) ctx.getBean("mailSender");
//SimpleMailMessage只能用来发送text格式的邮件
//SimpleMailMessage mail = new SimpleMailMessage();
// 建立邮件消息,发送简单邮件和html邮件的区别
MimeMessage mailMessage = sender.createMimeMessage();
MimeMessageHelper messageHelper = null;
try {
messageHelper = new MimeMessageHelper(mailMessage,true,"GBK");
} catch (MessagingException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
String email[] = emails.split(";");
// for (int i = 0; i < email.length; i++) {
try {
messageHelper.setTo(email);//接受者
messageHelper.setFrom("oss-autoreport@letv.com");
messageHelper.setSubject(subject);//主题
messageHelper.setText(text,true);//邮件内容
sender.send(mailMessage);
} catch (Exception e) {
e.printStackTrace();
}
// }
}
/**
* @function:测试邮件发送
*/
public static void main(String[] args) {
String mail_title = "title";
String mail_content = "content 地址:<a href='http://www.baidu.com'>baidu</a>";
EmailUtil email = EmailUtil.getInstance();
email.sentEmails("hukai@letv.com;hukai@letv.com;hukai9200@gmail.com", mail_title, mail_content);
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 注意:这里的参数(如用户名、密码)都是针对邮件发送者的 -->
<bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host">
<value>mail.letv.com</value>
</property>
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.timeout">60000</prop>
</props>
</property>
<property name="username">
<value>username</value>
</property>
<property name="password">
<value>password</value>
</property>
</bean>
</beans>