国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

兩點Javamail的開發與應用總結經驗

2019-11-18 11:58:14
字體:
來源:轉載
供稿:網友

  先還是看一段程序后,再一一講解其內容吧
  
  public class ReadMail
  {
  //初始化主機
  String host=”smtp.163.com”;
  String nuserName=”郵箱的用戶名”;
  String pwd=”用戶密碼”;
  session session;
  Public void readMail()
  {
  PRoperties props=new Properties();
  props.put(“mail.transport.protocol”,”smtp”);
  props.put(“mail.smtp.host”,””+host+””);
  props.put(“mail.smtp.port”,”25”);
  session=Session.getDefaultInstance(props);
  //獲取Store對象,使用pop3協議也可以使用IMAP
  Stroe store=session.getStore(“pop3”);
  //連接到郵件服務器
  store.connect(host,username,passWord);
  //獲取該用Floder對,并以只讀方式打開
  Folder folder=store.getFolder(“INBOX”);
  Folder.open(Folder.READ_ONLY);
  //檢索所有郵件,按需填充
  Message msg[]=folder.getMessage();
  //遍歷每一個郵件
  BufferedReader reader=new BufferedReader(new InputStreamReader(System.in));
  For(int i=0,n=msg.length;I<n;I++)
  {
  //打印每個郵件的發件人和主題
  System.out.println(I+”:”+msg[i].getFrom()[0]+”/t”+msg[i].getSubject());
  //顯示消息內容
  msg[i].writeTo(System.out);
  }
  floder.close(false);
  store.close();
  }
  }
  
  現在對程序一一講解吧!
  
  Store是一個抽象類,它模擬了消息存儲器(或稱為消息數據庫)及其內部目錄(Folder)訪問協議,以存儲和讀取消息,由其子類提供具體實現。客戶程序可以通過獲取一個Store對象來訪問消息存儲器,以絕大多數的存儲器要求用戶在訪問前提供認證信息,connect方法執行了該認證過程。與Transport類似,也可以指定Store使用協議。郵件是讀取郵件所以用pop3協議來讀取。
  
  具體如:Store store=new Store(“pop3”);
  
  然后認證:store.connect(host,username,pwd)
  
  javax.mail.Folder類,它是一個抽象類,用于分級組織郵件,其子類提供針對具本協議的實現。存儲在目錄內的消息被順序計數(從1開始到消息總數),該順序被稱為郵箱順序,郵件順序的改變消息的序列號,這種情況僅發生在客戶程序調用EXPunge方法擦除目錄內設置了Flags.Flag.DELETED標志位的消息時。
  
  執行擦除操作后,目錄內消息將重新編號。客戶程序可以通過消息序列號和直接通過相應的Message對象引用目錄中的對象,由于消息序列號會在會話中很可能會改變,因此應盡可能保存Message對象來引用對象。
  
  連接stroe之后,接一來就可以獲取一個文件夾(Folder)。該文件夾必須先使用open()方法打開,然后才能讀取里面的消息。
  
  Folder folder=store.getDefaultFolder();
  //或Folder folder=store.getFolder(“inbox”);
  folder.open(Folder.READ_WRITE);
  Message message[]=folder.getMessages();
  
  Open()方法指定了要打開的文件及打開方試(如Folder.READ_WRITE)。Inbox是pop3惟一可以使用的文件夾。假如使用IMAP,還可以使用其它的文件夾。讀取了Message之后,就可以用getContent()獲得內容,或者用writeTo()將內容寫入輸出流。GetContent()方法只能得到消息內容,而writeTo()輸出卻包含消息頭.
  
  如下兩種方式:
  
  System.out.println(((MimeMessage)msg).getContent());
  Msg.writeTo(System.out);
  
  讀完郵件后要關閉與Folder和Store的連接
  
  folder.close(false);
  stroe.close();

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阜城县| 遂川县| 东源县| 湖口县| 连平县| 勐海县| 汉源县| 阳春市| 邯郸市| 苍梧县| 泰兴市| 永胜县| 乌兰浩特市| 乳源| 内乡县| 沛县| 晋宁县| 温宿县| 剑河县| 桦川县| 淮南市| 奇台县| 凤冈县| 南皮县| 松溪县| 天津市| 长武县| 定南县| 札达县| 班玛县| 广安市| 西华县| 如东县| 镇平县| 班玛县| 运城市| 本溪市| 都昌县| 黑水县| 桐城市| 九台市|