package com.sobey.cmop.mvc.service.email;
import javax.mail.internet.MimeMessage;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import com.sobey.cmop.mvc.comm.BaseSevcie;
/**
* 纯文本邮件服务类.
*
* @author liukai
*/
public class SimpleMailService extends BaseSevcie {
private static Logger logger = LoggerFactory.getLogger(SimpleMailService.class);
private JavaMailSender mailSender;
/**
* 发送纯文本的通知邮件.
*
* <pre>
* to 收件人邮箱
* subject 邮件标题
* contentText 邮件Text文本内容
* </pre>
*
*
* @param map
*/
public void sendNotificationMail(String to, String subject, String contentText) {
StringBuffer html = new StringBuffer();
html.append("<html>");
html.append("<html>");
html.append("<head></head>");
html.append("<body>");
html.append(contentText);
html.append("</body>");
html.append("</html>");
// 发件人.通过读取配置文件获得.
String sendFrom = CONFIG_LOADER.getProperty("SENDFROM_EMAIL");
// 收件人.测试使用
String sendToTest = CONFIG_LOADER.getProperty("TEST_SENDTO_EMAIL");
try {
MimeMessage msg = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(msg, true, TemplateMailService.DEFAULT_ENCODING);
helper.setFrom(sendFrom);
helper.setTo(sendToTest); // 测试环境使用.
// helper.setTo(sendTo); //生产环境使用.
helper.setSubject(subject);
helper.setText(contentText, true);
mailSender.send(msg);
if (logger.isInfoEnabled()) {
logger.info("纯文本邮件已发送至 " + sendToTest);
}
} catch (Exception e) {
logger.error("发送邮件失败", e);
}
}
/**
* Spring的MailSender.
*/
public void setMailSender(JavaMailSender mailSender) {
this.mailSender = mailSender;
}
}