日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java邮件中添加excel_使用java api 创建excel内容并发送邮件

發布時間:2023/12/19 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java邮件中添加excel_使用java api 创建excel内容并发送邮件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

https://github.com/auguszero/javaToolRepsitory

利用java api 創建excel 內容并發送郵件

主要實現功能:

1.通過配置文件設置發送郵件發送方,接收方,抄送方

2.目前實現了 自定義發送內容

3.實現了excel 郵件發送內容

核心代碼 (SendMailManager ) :

package com.javatool.email.proxy;

import com.javatool.configer.DefaultConfigerContext;

import com.javatool.email.model.MailAuthenticator;

import com.javatool.email.model.SendMailConfigModel;

import javax.mail.*;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeBodyPart;

import javax.mail.internet.MimeMessage;

import javax.mail.internet.MimeMultipart;

import java.util.Date;

import java.util.List;

import java.util.Properties;

/**

* @author haisong

* @create 2018/09/13 14:21

*/

public class SendMailManager {

/**

* 發送郵件

* @param subject 郵件主題

* @param content 郵件內容

* @return success 發送成功 failure 發送失敗

* @throws Exception

*/

public static String sendMail( String subject, String content)

throws Exception {

SendMailConfigModel sendMailConfigModel = DefaultConfigerContext.getInstance().getModelFromProperties(SendMailConfigModel.class);

String to = sendMailConfigModel.getTo();

if (to != null){

Properties props = System.getProperties();

props.put("mail.smtp.host", sendMailConfigModel.getMail_smtp_host());

props.put("mail.smtp.auth", "true");

props.put("mail.transport.protocol", "smtp");

MailAuthenticator auth = new MailAuthenticator();

Session session = Session.getInstance(props, auth);

session.setDebug(true);

try {

MimeMessage message = new MimeMessage(session);

message.setFrom(new InternetAddress(sendMailConfigModel.getFrom()));

if (!to.trim().equals("")) {

message.addRecipient(Message.RecipientType.TO,

new InternetAddress(to.trim()));

}

List copyToList = sendMailConfigModel.getCopyToList();

if(copyToList!=null&&copyToList.size()>0) {

Address[] addresses = new Address[copyToList.size()];

int i = 0;

for (String copy : copyToList) {

addresses[i] = new InternetAddress(copy);

i++;

}

message.addRecipients(Message.RecipientType.CC, addresses);

}

message.setSubject(subject);

MimeBodyPart mbp1 = new MimeBodyPart(); // 正文

mbp1.setContent(content, "text/html;charset=utf-8");

Multipart mp = new MimeMultipart(); // 整個郵件:正文+附件

mp.addBodyPart(mbp1);

message.setContent(mp);

message.setSentDate(new Date());

message.saveChanges();

Transport trans = session.getTransport("smtp");

// trans.connect("smtp.163.com", sendMailConfigModel.getUser(), sendMailConfigModel.getPassword());

trans.send(message);

System.out.println(message.toString());

} catch (Exception e){

e.printStackTrace();

return "failure";

}

return "success";

}else{

return "failure";

}

}

public static String SendExcelMail(String subject,List> conteList) throws Exception {

String htmlStr ="";

for(int i=0;i

htmlStr = createHTML(htmlStr,conteList.get(i),i==0?true:false,i==conteList.size()-1?true:false);

}

String result = sendMail(subject,htmlStr);

return result;

}

private static String createHTML(String originHtml, List data,boolean headFlage,boolean endFlage) {

String html_msg="";

if(headFlage){

html_msg = "

html_msg = html_msg+"

";

for(int column=0;column

html_msg = html_msg +"

"+data.get(column)+"";

}

html_msg = html_msg+"

";

}else{

html_msg = html_msg+"

";

for(int column=0;column

html_msg = html_msg +"

"+data.get(column)+"";

}

html_msg = html_msg+"

";

}

if(endFlage){

html_msg = html_msg + "

";

}

return originHtml+html_msg;

}

}

配置文件內容 :

sendMail.mail_smtp_host=smtp.163.com

sendMail.mail_smtp_auth=login

sendMail.user=***@163.com

sendMail.password=******

sendMail.from=*****@163.com

sendMail.to=auguszero@163.com

excel 郵件發送實例圖:

如果你覺得可以 可以直接在github 上將該項目打包好 進行引入 作為工具類 。

同時歡迎大家一起來完善這個github項目 。

歡迎一起交流:

總結

以上是生活随笔為你收集整理的java邮件中添加excel_使用java api 创建excel内容并发送邮件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。