Spring 4傳送HTML/純文字郵件並攜帶附件
applicationContext檔案配置內容如下:
郵件資訊封裝類:<bean id="emailTemplate" class="org.springframework.mail.javamail.JavaMailSenderImpl"> <property name="defaultEncoding" value="utf-8" /> <property name="host" value="smtp.163.com" /> <property name="username" value="[email protected]" /> <property name="password" value="zhongguo123123" /> <property name="javaMailProperties"> <props> <prop key="mail.smtp.auth" >true</prop> </props> </property> </bean>
郵件傳送介面:import java.io.File; /** * 郵件物件 * @author liuhuan * Created by Administrator on 2014/10/24. */ public class EmailVo { /** * 郵件傳送者 */ private String sender; /** * 郵件接收者 */ private String [] receivers; /** * 郵件抄送人 */ private String [] cc; /** * 郵件抄送人 */ private String [] bcc; /** * Email傳送的內容 */ private String emailContent; /** * 郵件主題 */ private String subject; /** * 郵件附件 */ private File [] attachFile; public String getSender() { return sender; } public void setSender(String sender) { this.sender = sender; } public String getEmailContent() { return emailContent; } public void setEmailContent(String emailContent) { this.emailContent = emailContent; } public String getSubject() { return subject; } public void setSubject(String subject) { this.subject = subject; } public File[] getAttachFile() { return attachFile; } public void setAttachFile(File[] attachFile) { this.attachFile = attachFile; } public String[] getReceivers() { return receivers; } public void setReceivers(String[] receivers) { this.receivers = receivers; } public String[] getCc() { return cc; } public void setCc(String[] cc) { this.cc = cc; } public String[] getBcc() { return bcc; } public void setBcc(String[] bcc) { this.bcc = bcc; } }
郵件傳送實現:import com.sdyc.app.newmedia.vo.EmailVo; import javax.mail.MessagingException; import java.util.Date; /** * Email通知訊息傳送 * @author liuhuan * Created by Administrator on 2014/10/23. */ public interface EmailNotifyService { /** * 傳送簡單文字Email訊息 * @param emailVo */ public void sendEmailMessageOfSimpleText(EmailVo emailVo, Date date); /** * 傳送HTML格式的訊息 * @param emailVo * @param date */ public void sendEmailMessageOfHtmlText(EmailVo emailVo , Date date) throws MessagingException; /** * 帶附件並且html格式郵件傳送,帶附件並簡單文字格式郵件傳送 * @param emailVo */ public void sendEmailMessageOfAttachedFileAndSimpleText(EmailVo emailVo, Date date, boolean isHtmlText) throws MessagingException; }
import com.sdyc.app.newmedia.service.EmailNotifyService;
import com.sdyc.app.newmedia.vo.EmailVo;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import java.io.File;
import java.util.Date;
/**
* Email傳送
* @author Rayn
* Created by Administrator on 2014/10/23.
*/
@Service
public class EmailNotifyServiceImpl implements EmailNotifyService
{
@Autowired
private JavaMailSender emailTemplate;
public void setEmailTemplate(JavaMailSender emailTemplate)
{
this.emailTemplate = emailTemplate;
}
/**
* 傳送簡單文字Email訊息
* @param emailVo
*/
@Override
public void sendEmailMessageOfSimpleText(EmailVo emailVo, Date date)
{
SimpleMailMessage simpleTextMessage = new SimpleMailMessage();
simpleTextMessage.setFrom(emailVo.getSender());
simpleTextMessage.setTo(emailVo.getReceivers());
if(emailVo.getBcc().length > 0)
{
simpleTextMessage.setBcc(emailVo.getBcc());
}
if(emailVo.getCc().length > 0)
{
simpleTextMessage.setCc(emailVo.getCc());
}
simpleTextMessage.setText(emailVo.getEmailContent());
if(null == date)
{
date = new Date();
}
simpleTextMessage.setSentDate(date);
emailTemplate.send(simpleTextMessage);
}
/**
* 帶附件並簡單文字格式郵件傳送
*
* @param emailVo
*/
@Override
public void sendEmailMessageOfHtmlText(EmailVo emailVo , Date date) throws MessagingException
{
MimeMessage message = emailTemplate.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message);
helper.setFrom(emailVo.getSender());
helper.setValidateAddresses(true);
if(StringUtils.isNotBlank(emailVo.getEmailContent()))
{
helper.setText(emailVo.getEmailContent(), true);
}
helper.setSubject(emailVo.getSubject());
helper.setCc(emailVo.getCc());
helper.setTo(emailVo.getReceivers());
helper.setBcc(emailVo.getBcc());
if(null == date)
{
date = new Date();
}
helper.setSentDate(date);
emailTemplate.send(message);
}
/**
* 帶附件並且html格式郵件傳送,HTML格式的訊息
* @param emailVo
* @param date
*/
@Override
public void sendEmailMessageOfAttachedFileAndSimpleText(EmailVo emailVo, Date date, boolean isHtmlText) throws MessagingException
{
MimeMessage message = emailTemplate.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(emailVo.getSender());
//helper.setValidateAddresses(true);
helper.setText(emailVo.getEmailContent(), isHtmlText);
helper.setSubject(emailVo.getSubject());
helper.setCc(emailVo.getCc());
helper.setTo(emailVo.getReceivers());
helper.setBcc(emailVo.getBcc());
if(null == date)
{
date = new Date();
}
helper.setSentDate(date);
for(File file : emailVo.getAttachFile())
{
FileSystemResource fileSystemResource = new FileSystemResource(file);
helper.addAttachment(file.getName(), fileSystemResource);
}
emailTemplate.send(message);
}
}
郵件傳送測試:
@Test
public void ss( ) throws Exception {
EmailVo emailVo = new EmailVo();
emailVo.setReceivers(new String[]{"[email protected]"});
emailVo.setCc(new String[]{});
emailVo.setBcc(new String[]{});
emailVo.setSubject("測試");
emailVo.setSender("[email protected]");
emailVo.setEmailContent("<html><body><h1>中國人民</h1><h5>測試<font color=red>測試測試測試測試測試測</font>試測試測試測試測試測試測試測試測試測試</h5></body></html>");
File [] f = new File[]{new File("E:/test11111.txt"), new File("E:/test2.txt")};
emailVo.setAttachFile(f);
emailNotifyService.sendEmailMessageOfHtmlText(emailVo, new Date());
emailNotifyService.sendEmailMessageOfAttachedFileAndSimpleText(emailVo, null, true);
}
相關推薦
Spring 4傳送HTML/純文字郵件並攜帶附件
applicationContext檔案配置內容如下: <bean id="emailTemplate" class="org.springframework.mail.javamail.JavaMailSenderImpl"> <property
用JAVA Spring Mail 傳送HTML格式的郵件,樣式丟失的問題
QQ郵箱網頁版開啟HTML郵件是正常的,用PC版foxmail 或者 手機QQ郵箱APP開啟是不正常的,排版很亂。 主要原因: 使用郵件客戶端檢視郵件,哪怕只是在網頁上看郵件,你的郵件也不要用DIV去做,要用TABLE; 而且也不能用外部呼叫樣式,不能用內部頁面樣式,
Python3.5同時給多人傳送純文字郵件
關鍵點1:收件人郵箱msg_to=['[email protected]','[email protected]','[email protected]'],以列表的方式給出。 關鍵點2:msg['To'] =','.join(msg_to)。 關鍵點3:s.s
Python SMTP 傳送純文字郵件
利用Python的smtp和email模組傳送郵件 最近,開始學習python,因為從未接觸過python,所以這幾天抽時間看了一下基礎知識,然後就看到了python郵件這一塊。 因為使用qq郵箱傳送,所以也碰到了一些問題。所以,在此對使用python,利用qq郵箱傳送郵件
Python模組探祕之smtplib,實現純文字郵件的傳送
今天學到了如何使用Python的smtplib庫傳送郵件,中間也是遇到了各種各樣的錯誤和困難,還好都一一的解決了。下面來談一談我的這段經歷。 配置你的郵箱 為什麼要配置郵箱呢?具體要配置什麼呢? 因為我們申請的一些免費郵箱都是預設不開啟smtp/pop
python傳送html格式的郵件
python發郵件 1 #!/usr/bin/python 2 # -*- coding: UTF-8 -*- 3 import smtplib 4 from email.mime.text import MIMEText 5 import string 6 mailto_list=["[
Springboot2.0 傳送HTML 格式的郵件。【親測有效】
目的:使用 Springboot2.0 傳送 HTML 格式的郵件 這是建立在 你會使用 springboot2.0 傳送郵件的基礎上,參考這篇部落格: https://blog.csdn.net/Tomwildboar/article/details/83028375
使用linux的mail命令傳送html格式的郵件
今天在shell中使用mail命令傳送郵件,希望傳送表格,就用了html的格式來發送。但是開始的時候發現Outlook收到的顯示為html的原始碼, 就查閱了下相關資料,問題解決了,記錄下,以備以後再用: linux使用mail函式傳送需要新增 header引數,
【二】Python3使用SMTP傳送HTML格式的郵件
一、設定開啟SMTP服務並獲取授權碼二、使用Python3 傳送HTML格式的郵件0.使用的環境為:Python 3.6.3 (64bit)PyCharm 2017.3 (64bit)1.實現程式碼:i
python批量解析郵件並下載附件
python中的email模組可以方便的解析郵件,先上程式碼 #-*- encoding: gb2312 -*- import os import email def mail_to_text(ma
python 利用pop3接收郵件並儲存附件
def SaveAttach():# login the pop3 server ,retrive the new mails ,and download the attachments dstdir =dirname+str(time.ctime(time.time()))+'.zip'
javamail郵件Multipart支援同時發text和html混合訊息,alternative純文字與超文字共存
javamail郵件Multipart支援同時發text和html混合訊息,alternative純文字與超文字共存 轉載:http://www.cnblogs.com/zdz8207/p/java-javam
spring boot傳送郵件,使用的velocity模板(html)
新增依賴: <!--郵件依賴--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId&
分享一個郵件傳送的java例項(純文字,帶附件,多人抄送,多人密送)
貼程式碼: 1 import javax.activation.DataHandler; 2 import javax.activation.FileDataSource; 3 import javax.mail.*; 4 import javax.mail.internet.*;
Python傳送多個附件和支援HTML及純文字內容的 Email 實現
由於工作中經常需要收發電子郵件,例如每日(周)的工作報告,測試報告,監控告警,定時提醒等等,大都已電子郵件的形式傳送。本文將實現一個 Python 的電子郵件傳送類,支援傳送多個附件(目錄),HTML或純文字內容,抄送收件人,多個接收者等功能。 程式碼實現 #!/usr/
python應用系列教程——python使用smtp協議傳送郵件:html文字郵件、圖片郵件、檔案附件郵件
全棧工程師開發手冊 (作者:欒鵬) python使用smtp協議傳送電子郵件。包含傳送html文字郵件、包含圖片附件的郵件,包含其他檔案附件的郵件。可設定郵件的收發人,主題,內容。並以163郵件為例,分別在python2.7和python3.6下進行試驗。
封裝PHP mail函式傳送HTML郵件並使用中文發件人且自定義發件人郵箱地址
在寫PHP程式碼時,傳送郵件著實是一件比較讓人鬱悶的事情,PHP預設提供的mail函式太弱了,很難琢磨清楚到底該怎麼用。雖然也有很一些做得比較好得第三方庫,可以提供相當強大的郵件功能,尤其是可以很簡單的配置其使用gm
Spring JavaMail傳送郵件
JavaMail的介紹 JavaMail,顧名思義,提供給開發者處理電子郵件相關的程式設計介面。它是Sun釋出的用來處理email的API。它可以方便地執行一些常用的郵件傳輸。 雖然JavaMail是Sun的A
獲取html下的所有純文字的方法
第一種是看別人部落格的,第二種是自己發現的。 第一種: #-*- coding: utf8 -*- import re html = """ <div class="box-s1-l"> <div class="col"&g
合併並轉化一代測序seq純文字為fasta格式檔案
use strict; use warnings; my @dir; my @filelist; open OUT, ">result.fst"; opendir (DIR, "./") or die "can't open the directory!"; @dir = read