1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.stereotype.Component;
import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import java.io.File;
@Component public class MailUtil {
private final Logger logger = LoggerFactory.getLogger(getClass());
@Autowired JavaMailSender mailSender;
public void sendAttachmentFileEmail(String deliver, String[] receiver, String[] carbonCopy, String subject, String content, boolean isHtml, String fileName, File file) throws ServiceException { long startTimestamp = System.currentTimeMillis(); logger.info("Start send mail ...");
try { MimeMessage message = mailSender.createMimeMessage(); MimeMessageHelper messageHelper = new MimeMessageHelper(message, true);
messageHelper.setFrom(deliver); messageHelper.setTo(receiver); messageHelper.setCc(carbonCopy); messageHelper.setSubject(subject); messageHelper.setText(content, isHtml); messageHelper.addAttachment(fileName, file);
mailSender.send(message); logger.info("Send mail success, cost {} million seconds", System.currentTimeMillis() - startTimestamp); } catch (MessagingException e) { logger.error("Send mail failed, error message is {}\n", e.getMessage()); e.printStackTrace(); throw new ServiceException(e.getMessage()); } } }
|