日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Java實戰之基于swing的QQ郵件收發功能實現

瀏覽:215日期:2022-05-22 17:31:04
一、電子郵件詳解 假設自己的電子郵件是me@163.com,對方的郵件是you@163.com

我們編寫好文件填寫好對方文件,點擊發送,這些電子郵件就發出去了

而這些電子郵件被稱為MUA:Mail User Agent——郵件用戶代理。

Email發送出去的時候,不是直接到達對方的電腦,而是先發送到MTA:Mail Transfer Agent——郵件傳輸代理。如:網易 Email到達MTA后,MTA會把Emain投遞到郵件的最終目的MDA:Mail Delivery Agent——郵件投遞代理。如何存放在某個服務器上,我們將這個長期保存的地方叫做電子郵件郵箱。

Email不會直接到達對方的電腦,因為電腦不一定開機,開機不一定對方要取郵件,必須通過MUA從MDA把郵件取到自己的電腦上面。

有了上述概念,編寫程序來收發和接受文件,本質上就是:

1.編寫MUA把郵件發送到MTA

2.編寫MUA從MDA上收郵件

發郵件時,MUA和MTA使用的協議就是SMTP:Simple Mail Transfer Protocol,后面的MTA到另一個MTA也是用SMTP協議。

收郵件的時候,MUA和MDA使用的協議有兩種:POP:Post Office Protocol,即POP3;IMAP:Internet Message Access Protocol

二、郵件發送

import com.sun.mail.util.MailSSLSocketFactory;import javax.swing.*;import javax.mail.*;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Properties;/** * 郵件發送 * * @author ltl */public class SendEmailManger extends Thread { private String mailAdr;//郵箱 private String content;//郵件的內容 private String subject;//郵件的題目 public SendEmailManger(String mailAdr, String subject, String content) {super();this.mailAdr = mailAdr;this.subject = subject;this.content = content; } @Override public void run() {super.run();try { sendMail(mailAdr, subject, content);} catch (Exception e) { e.printStackTrace();} } private void sendMail(String mailAdr, String subject, String content) throws Exception {//加密的郵件套接字協議工廠MailSSLSocketFactory sf = new MailSSLSocketFactory();sf.setTrustAllHosts(true);final Properties props = new Properties();// 表示SMTP發送郵件,需要進行身份驗證props.put('mail.transport.protocol', 'smtp');props.put('mail.smtp.auth', 'true');props.put('mail.smtp.host', 'smtp.qq.com');// smtp登陸的賬號、密碼 ;需開啟smtp登陸props.setProperty('mail.debug', 'true');props.put('mail.user', '此處寫你的qq郵箱');props.put('mail.password', '此處寫你的QQ授權碼');// 特別需要注意,要將ssl協議設置為true,否則會報530錯誤props.put('mail.smtp.ssl.enable', 'true');props.put('mail.smtp.ssl.socketFactory', sf);Authenticator authenticator = new Authenticator() { protected PasswordAuthentication getPasswordAuthentication() {// 用戶名、密碼String userName = props.getProperty('mail.user');String password = props.getProperty('mail.password');return new PasswordAuthentication(userName, password); }};// 使用環境屬性和授權信息,創建郵件會話Session mailSession = Session.getInstance(props, authenticator);// 創建郵件消息MimeMessage message = new MimeMessage(mailSession);// 設置發件人try { InternetAddress form = new InternetAddress(props.getProperty('mail.user')); message.setFrom(form); // 設置收件人 InternetAddress to = new InternetAddress(mailAdr); message.setRecipient(Message.RecipientType.TO, to); // 設置郵件標題 message.setSubject(subject); // 設置郵件的內容體 message.setContent(content, 'text/html;charset=UTF-8'); // 發送郵件 Transport.send(message);} catch (MessagingException e) { e.printStackTrace();} } public static void main(String[] args) {// 1. 創建一個頂層容器(窗口)JFrame jf = new JFrame('發送郵件');jf.setSize(500, 500);jf.setLocationRelativeTo(null);jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);// 2. 創建中間容器(面板容器)JPanel panel = new JPanel(null);// 3. 創建一個基本組件(按鈕),并添加到 面板容器 中JLabel jla1 = new JLabel('收件郵箱: ');jla1.setLocation(50,50);jla1.setSize(100, 50);jla1.setFont(new Font('123', 5, 20)); final JTextField textField = new JTextField(8);textField.setFont(new Font('mailAdr', Font.PLAIN, 20));textField.setLocation(150,50);textField.setSize(250, 50);JLabel jla2 = new JLabel('郵件標題: ');jla2.setLocation(50,150);jla2.setSize(100, 50);jla2.setFont(new Font('123', 5, 20));final JTextField textField1 = new JTextField(8);textField1.setFont(new Font('subject', Font.PLAIN, 20));textField1.setLocation(150,150);textField1.setSize(250, 50);JLabel jla3 = new JLabel('郵件內容: ');jla3.setLocation(50,250);jla3.setSize(100, 50);jla3.setFont(new Font('123', 5, 20));final JTextField textField3 = new JTextField(8);textField3.setFont(new Font('content', Font.PLAIN, 20));textField3.setLocation(150,250);textField3.setSize(250, 50);JButton btn = new JButton('發送郵件');btn.setLocation(50,350);btn.setSize(100, 50);btn.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {SendEmailManger d = new SendEmailManger(textField.getText(), textField1.getText(), textField3.getText());d.start(); }});panel.add(jla1);panel.add(jla2);panel.add(jla3);panel.add(textField);panel.add(textField1);panel.add(textField3);panel.add(btn);// 4. 把 面板容器 作為窗口的內容面板 設置到 窗口jf.setContentPane(panel);// 5. 顯示窗口,前面創建的信息都在內存中,通過 jf.setVisible(true) 把內存中的窗口顯示在屏幕上。jf.setVisible(true); }}三、郵件接收

import com.sun.mail.util.MailSSLSocketFactory;import com.sun.org.apache.bcel.internal.generic.NEW;import javax.mail.*;import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.Date;import java.util.Properties;public class ReceiveEmailManger extends Thread { public static void main(String[] args){// 1. 創建一個頂層容器(窗口)JFrame jf = new JFrame('接收郵件');jf.setSize(500, 500);jf.setLocationRelativeTo(null);jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);JPanel panel = new JPanel(null);JLabel jla2 = new JLabel('標題: ');jla2.setLocation(50,50);jla2.setSize(150, 50);jla2.setFont(new Font('123', 5, 20));final JTextField textField1 = new JTextField(8);textField1.setFont(new Font('subject', Font.PLAIN, 20));textField1.setLocation(150,50);textField1.setSize(250, 50);JLabel jla3 = new JLabel('郵件內容: ');jla3.setLocation(50,150);jla3.setSize(150, 50);jla3.setFont(new Font('123', 5, 20));final JTextField textField3 = new JTextField(8);textField3.setFont(new Font('content', Font.PLAIN, 20));textField3.setLocation(150,150);textField3.setSize(250, 50); final JTextArea jta = new JTextArea();jta.setLocation(150,150);jta.setSize(250, 200);jta.setFont(new Font('content', Font.PLAIN, 30));JButton btn = new JButton('接收郵件');btn.setLocation(150,380);btn.setSize(100, 50);btn.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {try {ReceiveEmailManger re = new ReceiveEmailManger(); String [] mess = re.ReceiveEmailManger(); textField1.setText(mess[1]); jta.setText(mess[2]);}catch (Exception ea){ ea.printStackTrace();} }});panel.add(jla2);panel.add(jla3);panel.add(textField1);panel.add(btn);panel.add(jta);// 4. 把 面板容器 作為窗口的內容面板 設置到 窗口jf.setContentPane(panel);// 5. 顯示窗口,前面創建的信息都在內存中,通過 jf.setVisible(true) 把內存中的窗口顯示在屏幕上。jf.setVisible(true); } public String[] ReceiveEmailManger() throws Exception {//加密的郵件套接字協議工廠MailSSLSocketFactory sf = new MailSSLSocketFactory();sf.setTrustAllHosts(true);String pop3Server = 'pop.qq.com';String protocol = 'pop3';String username = '此處填寫qq郵箱';String password = '此處填寫QQ授權碼';Properties prop = new Properties();prop.put('mail.store.protocol', protocol);prop.put('mail.pop3.host', pop3Server);// 特別需要注意,要將ssl協議設置為true,否則會報530錯誤prop.put('mail.pop3.ssl.enable', 'true');prop.put('mail.pop3.ssl.socketFactory', sf);Session mailSession = Session.getDefaultInstance(prop,null);mailSession.setDebug(false);String [] mess = new String[3];try { Store store = mailSession.getStore(protocol); //登錄驗證 store.connect(pop3Server,username,password); //獲得用戶的郵件賬戶,注意通過pop3協議獲取某個郵件夾的名稱只能為inbox Folder folder = store.getFolder('inbox'); //設置訪問權限 folder.open(Folder.READ_ONLY); //獲取所有郵件 int size = folder.getMessageCount(); Message message = folder.getMessage(size); //獲取第一封發件人地址 String from = message.getFrom()[0].toString(); //獲取第一封郵件標題 String subject = message.getSubject(); //獲取第一封郵件內容 String conten = message.getContent().toString(); mess[0]=from; mess[1]=subject; mess[2]=conten;folder.close(false); store.close();}catch(Exception e) { e.printStackTrace();}return mess; }}四、導包

使用IDEA編程,在pom.xml文件下導入依賴包

<!-- java發送郵件jar包 --><dependencies> <dependency><groupId>javax.mail</groupId><artifactId>mail</artifactId><version>1.4.7</version> </dependency></dependencies>

到此這篇關于Java實戰之基于swing的QQ郵件收發功能實現的文章就介紹到這了,更多相關基于Java swing的QQ郵件收發功能實現內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: qq
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产欧美大片| 精品黄色一级片| 日韩精品一区二区三区中文在线| 中文在线а√天堂 | 97久久中文字幕| 偷拍亚洲精品| 日韩国产精品久久久| 欧美日韩国产免费观看| 久久超级碰碰| 快播电影网址老女人久久| 国产精品分类| 欧美影院精品| 综合欧美精品| 丝袜a∨在线一区二区三区不卡| 国产精品日本| 久久亚洲不卡| 一区二区亚洲精品| 男女男精品视频网| 午夜在线观看免费一区| 亚洲一二av| 自拍自偷一区二区三区| 成人欧美一区二区三区的电影| sm捆绑调教国产免费网站在线观看 | 日韩在线观看中文字幕| 性色一区二区| 亚洲五月综合| 中文字幕日本一区| 日韩欧美中文字幕一区二区三区 | 亚洲精品乱码久久久久久蜜桃麻豆 | 日韩在线观看不卡| 欧美va天堂在线| 精品一区二区三区亚洲| 日韩精品电影| 婷婷综合社区| 欧美精品影院| 国产精品99久久精品| 999国产精品| 蜜臀av在线播放一区二区三区| 欧美精品羞羞答答| 综合日韩av| 99riav1国产精品视频| 好吊日精品视频| 91精品国产自产观看在线| 欧美伊人久久| 久久av免费| 久久精品国产99久久| 婷婷丁香综合| 国产福利一区二区三区在线播放| 卡一卡二国产精品| 麻豆视频一区二区| 成人精品高清在线视频| 999久久久91| 欧美一区=区三区| 高清一区二区三区av| 性欧美精品高清| 日韩不卡免费视频| 免费在线观看一区| 女人天堂亚洲aⅴ在线观看| 综合国产在线| 欧美黄色网页| 鲁大师影院一区二区三区| 中文字幕一区二区三区日韩精品| 久草精品视频| 青青久久av| 国产伦精品一区二区三区千人斩| 国产精品一区二区三区av麻| 欧美亚洲日本精品| 久久精品欧洲| 免费视频一区二区| 日韩高清在线不卡| 久久xxxx精品视频| 午夜精品成人av| 日韩美女一区二区三区在线观看| 美女性感视频久久| 国产九九精品| 日韩精彩视频在线观看| 国产不卡人人| 亚洲欧美网站在线观看| 给我免费播放日韩视频| 涩涩涩久久久成人精品| 国产精品视频一区二区三区四蜜臂 | 国产精选一区| 国产亚洲永久域名| 国产精品久久亚洲不卡| 亚洲大片在线| 国产精选久久| 欧美在线影院| 在线天堂中文资源最新版| 日韩在线播放一区二区| 日本激情一区| 在线免费观看亚洲| 日韩精品网站| 日韩和欧美的一区| 欧美激情福利| 美女久久网站| 午夜欧美精品| 欧美aa在线视频| 国产亚洲欧美日韩精品一区二区三区 | 国产精品亚洲综合在线观看| 日韩高清不卡在线| 国产精品日本一区二区三区在线 | 日韩网站中文字幕| 中文国产一区| 久久久9色精品国产一区二区三区| 日本精品另类| 九九综合九九| 欧美精品91| 在线国产一区| 激情丁香综合| 精品欠久久久中文字幕加勒比| 国产乱人伦丫前精品视频| 欧美日韩四区| 国产不卡一区| 亚洲日本欧美| 狠狠色综合网| аⅴ资源天堂资源库在线| 日韩美女国产精品| 91超碰国产精品| 麻豆视频一区二区| 欧美日韩精品一本二本三本| 国产精品久av福利在线观看| 日韩一级网站| 日本久久成人网| 国内一区二区三区| 高清一区二区| 国产精品白浆| 国产精品嫩模av在线| 亚洲日韩中文字幕一区| 欧美国产另类| 亚洲精品第一| 蜜臀国产一区二区三区在线播放 | 国产另类在线| 精品久久影院| 视频一区日韩精品| 免费人成精品欧美精品 | 免费亚洲一区| 69堂免费精品视频在线播放| 中文字幕日韩亚洲| 日韩一级欧洲| 蜜桃传媒麻豆第一区在线观看| 激情久久婷婷| 国产在线日韩| 国产一区91| 国产精品日韩| 日韩一区二区三区四区五区| 老司机精品久久| 欧美日韩四区| 国产婷婷精品| 久久xxxx精品视频| 欧美久久精品| 欧美一区自拍| 久久三级中文| 精品久久中文| 欧美sm一区| 欧美福利一区| 亚洲大全视频| 亚洲专区视频| 亚洲精品伦理| 麻豆成人91精品二区三区| 国产精品欧美三级在线观看| 欧美日本不卡高清| 国产日韩欧美三区| 久久精品99国产精品日本| 精品国产精品国产偷麻豆| 精品久久一区| 色婷婷综合网| 91精品99| 青青草精品视频| 麻豆精品久久| 免费视频一区三区| 国产麻豆综合| 亚洲2区在线| 97人人精品| 日本精品在线播放| 国产高清一区| 国产在线视频欧美一区| 精品亚洲a∨一区二区三区18| 日韩一区免费| 九九99久久精品在免费线bt| 成人台湾亚洲精品一区二区| 亚洲91精品| 国产麻豆综合| 91成人在线精品视频| 国产精品tv| 成人在线丰满少妇av| 午夜在线视频观看日韩17c| 日本不卡一区二区三区| 久久精品国产在热久久| 九色porny丨国产首页在线| 麻豆9191精品国产| 国产亚洲一区| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 中文字幕在线免费观看视频| 美女国产一区| 国产乱人伦丫前精品视频| 久久蜜桃资源一区二区老牛| 在线亚洲国产精品网站| 日产午夜精品一线二线三线| 日韩视频中文| 精品视频高潮|