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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

015_JavaMail

發布時間:2025/4/17 java 129 豆豆
生活随笔 收集整理的這篇文章主要介紹了 015_JavaMail 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 郵件服務器

1.1. 類似于web服務器(如Tomcat)、數據庫服務器(如MySql), 把一臺郵件服務器端軟件放在網絡上, 即可供廣大網絡用戶使用。

1.2. 類似于郵局, 用戶發郵件時, 郵件服務器處理, 再投遞給相應的郵箱地址。

1.3. 比如: 有sina、sohu、163、qq等等郵件服務器。

2. 電子郵箱: 郵件服務器中的賬戶, 服務器會為每個郵箱賬戶分配地址和空間。

3. 郵件收發協議

3.1. SMTP(發送郵件協議, 默認端口25)。

3.2. POP3(收取郵件協議, 默認端口110, 不能在線操作)。

3.3. IMAP(收取郵件協議, 默認端口143, 運行在TCP/IP協議之上, 與POP3的主要區別: 可以在線操作, 用戶可以不用把所有的郵件全部下載, 可以通過客戶端直接對服務器上的郵件進行操作)。

3.4. 開通qq郵件的SMTP服務, 讓自己的qq郵件成為一個可以發送郵件的服務器

3.4.1. 登錄自己的qq郵箱, 點擊設置, 然后點擊賬戶

3.4.2. 找到"POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務", 點擊"開啟"按鈕

3.4.3. 按提示發送短信, 發送完成點擊"我已發送"按鈕

3.4.4. 開通完成

4. 創建電子郵件

4.1. 郵件頭

  • from字段(發件人)
  • to字段(收件人)
  • subject字段(郵件標題)
  • cc字段(抄送) / bcc字段(密送)

4.2. 郵件體

  • 郵件內容

4.3. 抄送: A發給B, 選擇抄送給C, B可以看見郵件抄送給C。

4.4. 密送: A發給B, 選擇暗送給C, B可以看見郵件, 但是不能看到郵件發給C。

4.5. 郵件創建步驟

4.5.1. 創建一個郵件對象。

4.5.2. 設置發件人, 收件人, 可選增加多個收件人, 抄送人, 密送人。

4.5.3. 設置郵件的主題(標題)。

4.5.4. 設置郵件的正文(內容)。

4.5.5. 設置顯示的發送時間。

4.5.6. 保存到本地。

5. JavaMail

5.1. JavaMail是一套郵件收發程序API, 編寫JavaMail程序就是編寫郵件客戶端程序(類似于qq、新浪等郵件客戶端)。

5.2. Github上JavaMail下載地址: https://javaee.github.io/javamail/

5.3. 例子

5.3.1.?新建一個名為JavaMail的Java項目, 同時添加相關jar包

5.3.2.?添加幾個文件

5.3.3.?編寫MailUtils.java

package com.zr.mail;import java.util.Date; import java.util.List; import java.util.Properties; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Multipart; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage;public class MailUtils {// SMTP服務器地址private final static String SMTP = "smtp.qq.com";// 發件賬戶private final static String USER = "xxxxxx@qq.com"; // 發件密碼private final static String PASSWORD = "drnhiqgdgad"; // 發件人public static String FROM = "xxxxxx@qq.com";// 收件人public static String RECIPIENT = "oooooo@qq.com";/*** 創建郵件服務器鏈接會話*/public static Session createSession() {// 創建參數配置, 用于連接郵件服務器的參數配置Properties props = new Properties();props.setProperty("mail.transport.protocol", "smtp");props.setProperty("mail.smtp.host", SMTP);// 連接認證props.setProperty("mail.smtp.auth", "true");// 在控制臺顯示連接日志信息props.put("mail.debug", "true");// 與郵件服務器連接會話Session session = Session.getInstance(props);return session;}/*** 發送郵件* @param session 與郵件服務器連接會話* @param message 郵件信息* @throws MessagingException */public static void sendMail(Session session, Message message) throws MessagingException {// 1. 根據Session獲取郵件傳輸對象Transport transport = session.getTransport();// 2. 使用 郵箱賬號和密碼連接郵件服務器, 這里認證的郵箱必須與 message中的發件人郵箱一致, 否則報錯transport.connect(USER, PASSWORD);// 3. 發送郵件, 發到所有的收件地址, message.getAllRecipients()獲取到的是在創建郵件對象時添加的所有收件人, 抄送人, 密送人transport.sendMessage(message, message.getAllRecipients());// 4. 關閉連接transport.close();}private static Message createMessage(Session session, String sendMail, String subject, List<String> tos, List<String> ccs, List<String> bccs) throws AddressException, MessagingException {// 1. 創建一封郵件Message message = new MimeMessage(session);// 2. From: 發件人message.setFrom(new InternetAddress(sendMail));// 3. To: 收件人(可以增加多個收件人、抄送、密送)for (String item : tos) {message.addRecipient(MimeMessage.RecipientType.TO, new InternetAddress(item));}if(ccs != null) {for (String item : ccs) {message.addRecipient(MimeMessage.RecipientType.CC, new InternetAddress(item));}}if(bccs != null) {for (String item : bccs) {message.addRecipient(MimeMessage.RecipientType.BCC, new InternetAddress(item));}}// 4. Subject: 郵件主題message.setSubject(subject);// 5. 設置發件時間message.setSentDate(new Date());return message;}public static Message textMessage(Session session, String sendMail, String subject, Object o, List<String> tos, List<String> ccs, List<String> bccs) throws AddressException, MessagingException {Message message = createMessage(session, sendMail, subject, tos, ccs, bccs);message.setContent(o, "text/html;charset=UTF-8"); // 郵件正文message.saveChanges(); // 保存設置return message;}public static Message multiMessage(Session session, String sendMail, String subject, Multipart m, List<String> tos, List<String> ccs, List<String> bccs) throws AddressException, MessagingException {Message message = createMessage(session, sendMail, subject, tos, ccs, bccs);message.setContent(m); // 郵件正文message.saveChanges(); // 保存設置return message;} }

5.3.4.?編寫MyMail.java

package com.zr.mail;import java.io.IOException; import java.util.Arrays; import java.util.List; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Multipart; import javax.mail.Session; import javax.mail.internet.AddressException; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMultipart;public class MyMail {public static void main(String[] args) {try {Session session = MailUtils.createSession();Message message = textMessage(session, MailUtils.FROM, Arrays.asList(MailUtils.RECIPIENT), Arrays.asList("aihiao@sina.com"), null);MailUtils.sendMail(session, message);} catch (Exception e) {e.printStackTrace();}}// 純文本郵件public static Message textMessage(Session session, String sendMail, List<String> tos, List<String> ccs, List<String> bccs) throws AddressException, MessagingException {return MailUtils.textMessage(session, sendMail, "測試Java Mail", "只發送了純文本的郵件", tos, ccs, bccs);}// 文本和圖片郵件public static Message imageMessage(Session session, String sendMail, List<String> tos, List<String> ccs, List<String> bccs) throws AddressException, MessagingException, IOException {// 1. 圖片 MimeBodyPart pic1 = new MimeBodyPart();pic1.attachFile("config/ani_08.png");pic1.setContentID("ani_08");MimeBodyPart pic2 = new MimeBodyPart();pic2.attachFile("config/ani_09.png");pic2.setContentID("ani_09");// 2. 文字MimeBodyPart content = new MimeBodyPart();content.setContent("<html><body><img src='cid:ani_08' /><img src='cid:ani_09' /><br />包含圖片的郵件</body></html>", "text/html;charset=UTF-8");// 3. 封裝文字和圖片Multipart mp = new MimeMultipart();mp.addBodyPart(pic1);mp.addBodyPart(pic2);mp.addBodyPart(content);return MailUtils.multiMessage(session, sendMail, "測試Java Mail", mp, tos, ccs, bccs);}// 文本和文件郵件public static Message fileMessage(Session session, String sendMail, List<String> tos, List<String> ccs, List<String> bccs) throws AddressException, MessagingException, IOException {// 1. 文件MimeBodyPart file = new MimeBodyPart();file.attachFile("config/ActiveMQ中文教程參考手冊.pdf");// 2. 文字MimeBodyPart content = new MimeBodyPart();content.setContent("<html><body>包含附件的郵件</body></html>", "text/html;charset=UTF-8");// 3. 封裝文字和附件Multipart mp = new MimeMultipart();mp.addBodyPart(file);mp.addBodyPart(content);return MailUtils.multiMessage(session, sendMail, "測試Java Mail", mp, tos, ccs, bccs);}// 文本、圖片和文件郵件public static Message imageFileMessage(Session session, String sendMail, List<String> tos, List<String> ccs, List<String> bccs) throws AddressException, MessagingException, IOException {// 1. 圖片 MimeBodyPart pic1 = new MimeBodyPart();pic1.attachFile("config/ani_08.png");pic1.setContentID("ani_08");MimeBodyPart pic2 = new MimeBodyPart();pic2.attachFile("config/ani_09.png");pic2.setContentID("ani_09");// 2. 文件MimeBodyPart file = new MimeBodyPart();file.attachFile("config/ActiveMQ中文教程參考手冊.pdf");// 3. 文字MimeBodyPart content = new MimeBodyPart();content.setContent("<html><body><img src='cid:ani_08' /><img src='cid:ani_09' /><br />包含圖片和附件的郵件</body></html>", "text/html;charset=UTF-8");// 4. 封裝文字、圖片和附件Multipart mp = new MimeMultipart();mp.addBodyPart(pic1);mp.addBodyPart(pic2);mp.addBodyPart(file);mp.addBodyPart(content);return MailUtils.multiMessage(session, sendMail, "測試Java Mail", mp, tos, ccs, bccs);} }

5.3.5.?發送純文本給daiyingxiong同時發送給了aihiao

5.3.6.?發送純文本、圖片和文件給daiyingxiong同時抄送給了aihiao

總結

以上是生活随笔為你收集整理的015_JavaMail的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: www日本xxx| 日本网站在线看 | 丰满熟妇乱又伦 | 4虎tv| 美女精品 | 一区日韩 | 拔插拔插华人 | 菲律宾黄色片 | 中文字幕3区 | 一级片视频免费观看 | 天天干天天干天天 | 99视频在线 | 日韩精品成人av | 亚州av影院 | 激情春色网| 日韩伦理一区二区 | 亚洲毛片一区二区 | 91免费视频网 | 国产一级不卡毛片 | 少妇搡bbbb搡bbb搡澳门 | 91超碰国产在线 | 久久亚洲AV成人无码国产人妖 | 亚洲一级av无码毛片精品 | 无套内谢少妇露脸 | 中文字幕乱码一二三区 | 在线观看三区 | 一级视频在线免费观看 | 在线观看网页视频 | 国产成人av一区二区 | 欧美大片一级 | 欧美日韩一区二区三区在线观看 | 欧美肉大捧一进一出免费视频 | 国产精选一区二区 | 2023av在线| 麻豆视屏 | 欧美高清 | 老外黄色一级片 | 色眯眯影视| 少妇人妻一区二区三区 | 国产精品国产馆在线真实露脸 | 久久综合精品视频 | 欧美丝袜一区二区三区 | 打白嫩屁屁网站视频短裙 | 国产精品av免费观看 | sese在线| 国产成人av无码精品 | 亚洲97在线 | 视频在线观看一区二区三区 | 欧美成人黄色网 | 国产成人一区二区三区小说 | 久久国产一区 | 一级久久久久 | gogo人体做爰大胆视频 | 日皮视频免费看 | 久久久综合 | 免费三级在线 | 亚洲第一中文字幕 | 九九成人| 免费观看国产视频 | 国产一区二区三区免费在线观看 | 日日夜夜添 | 97自拍视频 | 凹凸视频一区二区 | 国产主播在线播放 | 美女黄色一级片 | 亚洲一卡二卡三卡 | 猛男被粗大男男1069 | 国产成人在线免费视频 | 日韩精品一区二区三区四区 | 国产一级做a爰片在线看免费 | 日韩少妇裸体做爰视频 | av不卡一区二区 | 最新啪啪网站 | 欧洲成人综合网 | 男女操操视频 | 97射射| 久久深夜 | 欧美在线不卡视频 | 亚洲精品91| 欧美三级午夜理伦三级小说 | 1区2区视频 | 日本xxxxxxxxx| 精品国产96亚洲一区二区三区 | a级黄色在线观看 | 亚洲欧洲日产av | 美女免费网站 | 中文字幕av不卡 | 欧美成人不卡 | 色婷婷婷 | 东北女人av | 日韩欧美一卡 | 男女爱爱福利视频 | 精品免费国产一区二区三区 | 99热在线看 | 一区二区三区免费观看视频 | 亚洲国产精品久久久久久 | 免费看女生隐私 | 伊人国产一区 | 青青操在线视频 |