傳送郵件的例子,備份
package net.uni.ap.email;
import java.io.File;
import java.util.Date;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import net.uni.in1.BaseExcelConstants;
public class EmailUtil {
/**
* @param mailAddress 接收郵件地址
* @param title 標題
* @param textType 內容類別"html"或者正常文字
* @param text 內容,根據textType判斷
* @return
* @方法說明 傳送郵件方法
* @date 2012-5-21
*/
public static String sendEmail(EmailObject emailObj){
//建立郵件會話
Properties props=new Properties();
//儲存傳送郵件伺服器的資訊
props.put("mail.smtp.host",EmailConStant.MAIL_SERVER);
//同時通過驗證
props.put("mail.smtp.auth","true");
//根據屬性新建一個郵件會話
Session s=Session.getInstance(props);
s.setDebug(true); //有他會列印一些除錯資訊。
//由郵件會話新建一個訊息物件
MimeMessage message=new MimeMessage(s);
//設定郵件
try {
InternetAddress from = new InternetAddress(EmailConStant.MAIL_COUNT);
message.setFrom(from);
InternetAddress[] tos = new InternetAddress[emailObj.getMailAddresses().length];
// //設定收件人,並設定其接收型別為TO
for (int i = 0;i< emailObj.getMailAddresses().length;i++){
tos[i] = new InternetAddress(emailObj.getMailAddresses()[i]);
}
message.setRecipients(Message.RecipientType.TO, tos);
message.setSubject(emailObj.getTitle());
//設定發信時間
message.setSentDate(new Date());
//儲存郵件資訊
message.saveChanges();
//傳送郵件
Transport transport=s.getTransport("smtp");
//以smtp方式登入郵箱,第一個引數是傳送郵件用的郵件伺服器SMTP地址,第二個引數為使用者名稱,第三個引數為密碼
transport.connect(EmailConStant.MAIL_SERVER,EmailConStant.MAIL_COUNT,EmailConStant.MAIL_PASSWORD);
Multipart mp = new MimeMultipart();
MimeBodyPart bmp = new MimeBodyPart();
if (emailObj.getTextType()!=null&&emailObj.getTextType().equals("html"))
bmp.setContent(emailObj.getText(),"text/html;charset=gbk");
else
bmp.setText(emailObj.getText());
mp.addBodyPart(bmp);
//傳送附件
if(emailObj.getFiles()!=null&&emailObj.getFiles().length>0){
for(File fs:emailObj.getFiles()){
if(fs.exists()){
bmp=new MimeBodyPart();
FileDataSource fds=new FileDataSource(BaseExcelConstants.UPLOADPATH+"/"+fs.getName());
bmp.setDataHandler(new DataHandler(fds));
String newName =fs.getName().substring(0, fs.getName().lastIndexOf("-"))+fs.getName().substring(fs.getName().lastIndexOf("."));
//名字需要先轉為ISO 再轉為GB2312 否則郵件內會顯示亂碼 這個很重要。。
newName =new String(newName.getBytes("gb2312"),"ISO8859-1");
bmp.setFileName(newName);
mp.addBodyPart(bmp);
}
}
}
emailObj.setFiles(null);
message.setContent(mp);
message.saveChanges();
//傳送郵件,其中第二個引數是所有已設好的收件人地址
transport.sendMessage(message,message.getAllRecipients());
transport.close();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public static void main(String[] args) {
String[] strs = {" [email protected]"};
EmailObject obj = new EmailObject();
obj.setMailAddresses(strs);
obj.setTitle("測試");
obj.setTextType("text");
obj.setText("哈哈哈");
sendEmail(obj);
}
}
實體類
package net.uni.ap.email; import java.io.File; public class EmailObject { String[] mailAddresses;//郵件地址 String title; //標題 String textType; //文字類別。"html" 為html 其他為普通文字 作廢了,現在都用html String text; //文字內容 File[] files; //附件列表 public String[] getMailAddresses() { return mailAddresses; } public void setMailAddresses(String[] mailAddresses) { this.mailAddresses = mailAddresses; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getTextType() { return textType; } public void setTextType(String textType) { this.textType = textType; } public String getText() { return text; } public void setText(String text) { this.text = text; } public File[] getFiles() { return files; } public void setFiles(File[] files) { this.files = files; } }
相關推薦
傳送郵件的例子,備份
package net.uni.ap.email; import java.io.File; import java.util.Date; import java.util.Properties; import javax.activation.DataHandler;
play1.2.x簡單的傳送郵件例子
對於PlayFramework框架不瞭解的朋友可以參照此部落格進行配置,部落格地址: http://blog.csdn.net/wangran51/article/details/9357997。然後就是在controllers包中新建EmailAction類,總體來說play框架出來的時間已經不
python 自動傳送郵件報表,正文插入圖片,帶附件
# -*- coding: utf-8 -*- """ Created on Wed Aug 15 17:44:33 2018 @author: cp """ from email.mime.text import MIMEText from email.mime.mul
傳送郵件功能,以及郵箱報錯501,535!!!
前言 大多開發專案中都會有著傳送郵件的需求,例如定時傳送郵件,驗證郵件等等。 此文介紹傳送郵件功能 前期準備 mail.jar包 建立一個class檔案 class檔案內容(模板): public class Mail { public static
SAP 傳送郵件例子(內部)
REPORT ZSEND . TABLES: KNA1. * data for send function DATA DOC_DATA LIKE SODOCCHGI1. DATA OBJECT_ID LIKE SOODK. DATA OBJCONT LIKE
C# 使用 SmtpClient.SendAsync 方法傳送郵件失敗,總是返回 Cancelled
問題: 呼叫 SmtpClient.SendAsync,在 SendCompleted 的回撥函式裡面總是獲取到 e.Cancelled 為 true。 後來測試了一下,相同的程式碼,只是把 Smt
python3傳送郵件02(簡單例子,帶附件)
#!/usr/bin/env python# -*- coding:UTF-8 -*- import osimport smtplibfrom email.header import Headerfrom email.mime.text import MIMETextfrom email.mime.mult
Jenkins任務失敗,傳送郵件通知
1、進入系統管理->系統設定,然後進行下面設定: 2、配置管理員郵件賬號,需要和後面的郵件傳送者一致。否則可能會發送不成功 3、配置基礎的郵件傳送的配置 4、配置郵件擴充套件配置--用來自定義郵件格式等,這裡需要注意一點:定義的郵件伺服器等配置要和上面的郵件普通配置一致 5、在每
C#實現.Net對郵件進行DKIM簽名和驗證,支援附件,傳送郵件簽名後直接投遞到對方伺服器(無需己方郵件伺服器)
專案地址 github.com/xiangyuecn/… 主要支援 對郵件進行DKIM簽名,支援帶附件 對整個郵件內容(.eml檔案)的DKIM簽名進行驗證 對MailMessage、SmtpClient進行了一次封裝,傳送郵件簡單易用,進行DKIM簽名後直接投遞到對方伺服器(無需己方郵件
Oracle 儲存過程中傳送郵件,並支援使用者驗證 中文標題和內容
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
阿里雲ECS遮蔽25埠,官方建議使用465 SSL埠傳送郵件
阿里雲ECS VPC網路,搭建了zabbix,想通過三方郵件系統傳送郵件,本機開虛擬機器測試發郵件一切正常,到阿里ECS的時候郵件各種發不出去,到處找原因,最後度娘告訴了我真想,原來阿里把25埠遮蔽了。 嘗試解封,呵呵...繼續找度娘 谷哥,說是可以繞開25埠,用465埠,步驟如下(先不要操作,
springboot傳送郵件的實現例子
springboot是集大成者,對於傳送郵件的功能也不例外。而且往往是原來的功能實現更簡單,方便。更符合Facade Pattern。 下面就是springboot傳送郵件的實現例子,程式碼已封裝好,按照提示的步驟配置好就可以直接用了。當然如果你是新搭的專案,需要引入springboot的mail包
郵件傳送超大附件,上傳下載特別慢,怎麼解決?
目前,已有不少郵箱如QQ郵箱、網易郵箱等支援超大附件,可以傳送2G或3G大小的檔案。但是諸多郵箱傳送超大附件普遍存在以下問題: 首先,郵件傳送大檔案對檔案大小有限制,超過上限的超大附件無法傳送;其次,超大附件上傳、下載的速度有限,而且速度也不穩定;再次,即便上傳成功之後,如果對方的郵箱接收附件的大小也會有限
傳送郵件工具類及操作(例子)
1.所需要工具類 1.1ExcelUtil工具 package com.finlabtech.pinjamancepatanalyse.util; import org.apache.poi.hssf.util
python 使用SMTP傳送郵件[HTML格式,帶附件]
今天百度學習瞭如何在python中使用SMTP傳送郵件,包括帶HTML格式和附件。 基本套路就是定義一個MIMEText(不帶附件)或者MIMEMultipart(可帶多個附件),然後再連線、登入郵件伺服器併發送即可。(傳送HTML格式的郵件與純文字訊息的郵件不
[python]socket傳送http請求,非阻塞io的一個例子
#通過非阻塞io實現http請求 import socket from urllib.parse import urlparse #使用非阻塞io完成http請求 def get_url(url): #通過socket請求html url
伺服器實時通知客戶端方案,伺服器傳送/推送事件方案(2)server event,典型例子,可以用作股票、新聞資訊推送
server event是html5規範的一部分,它相比websocket使用起來更簡單,對伺服器的改動也最小 前端html部分 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&
csdn左側個人欄目美化,css英文顏色大全,跑馬燈效果,點選轉到qq聯絡,點選轉到傳送郵件。
跑馬燈效果: 總的來說就是這個標籤在起作用 點選轉到qq聯絡: 注意替換href中的32248827 點選轉到傳送郵件: 注意替換href中的32248827 css英文顏色大全: red
[Python]python3使用smtplib傳送郵件,帶xlsx附件
#encoding=utf8 import smtplib from email.mime.multipart import MIMEMultipart from email.header import Header from email.mime.text import M
java中傳送郵件,如何設定發件人名稱、暱稱
msg.setFrom (new InternetAddress ("[email protected]", "這裡是需要的暱稱", "UTF-8")); msg.setSubject (subject); msg.setText (content); msg.ad