小妖女 发表于 2015-1-18 11:21:44

发布一篇[JAVA100例]048、利用JavaMail吸收邮件

最后我再次声明,我并没有说不看好java,实际上我对java很乐观的,毕竟她正在不断改进中,我相信她总有一天会和.net网页编程并驾齐驱的
importjavax.mail.*;
importjavax.mail.internet.*;
importjava.util.*;
importjava.io.*;
/**
*<p>Title:利用JavaMail吸收邮件</p>
*<p>Description:实例JavaMail包吸收邮件,本实例没有完成吸收邮件的附件。</p>
*<p>Copyright:Copyright(c)2003</p>
*<p>Filename:POPMail.java</p>
*@version1.0
*/
publicclassPOPMail{
/**
*<br>办法申明:主办法,吸收用户输出的邮箱服务器、用户名和暗码
*<br>输出参数:
*<br>前往范例:
*/
  publicstaticvoidmain(Stringargs[]){
    try{
      StringpopServer=args;
      StringpopUser=args;
      StringpopPassword=args;
      receive(popServer,popUser,popPassword);
    }catch(Exceptionex){
      System.out.println("Usage:javacom.lotontech.mail.POPMail"+"popServerpopUserpopPassword");
    }
    System.exit(0);
  }
/**
*<br>办法申明:吸收邮件信息
*<br>输出参数:
*<br>前往范例:
*/
  publicstaticvoidreceive(StringpopServer,StringpopUser,StringpopPassword){
    Storestore=null;
    Folderfolder=null;
    try{
      //猎取默许会话
      Propertiesprops=System.getProperties();
      Sessionsession=Session.getDefaultInstance(props,null);
      //利用POP3会话机制,毗连服务器
      store=session.getStore("pop3");
      store.connect(popServer,popUser,popPassword);
      //猎取默许文件夹
      folder=store.getDefaultFolder();
      if(folder==null)thrownewException("Nodefaultfolder");
      //假如是收件箱
      folder=folder.getFolder("INBOX");
      if(folder==null)thrownewException("NoPOP3INBOX");
      //利用只读体例翻开收件箱
      folder.open(Folder.READ_ONLY);
      //失掉文件夹信息,猎取邮件列表
      Message[]msgs=folder.getMessages();
      for(intmsgNum=0;msgNum<msgs.length;msgNum++){
        printMessage(msgs);
      }
    }catch(Exceptionex){
      ex.printStackTrace();
    }
    finally{
    //开释资本
      try{
        if(folder!=null)folder.close(false);
        if(store!=null)store.close();
      }catch(Exceptionex2){
        ex2.printStackTrace();
      }
    }
  }
/**
*<br>办法申明:打印邮件信息
*<br>输出参数:Messagemessage信息对象
*<br>前往范例:
*/
  publicstaticvoidprintMessage(Messagemessage){
    try{
      //取得发送邮件地点
      Stringfrom=((InternetAddress)message.getFrom()).getPersonal();
      if(from==null)from=((InternetAddress)message.getFrom()).getAddress();
      System.out.println("FROM:"+from);
      //猎取主题
      Stringsubject=message.getSubject();
      System.out.println("SUBJECT:"+subject);
      //猎取信息对象
      PartmessagePart=message;
      Objectcontent=messagePart.getContent();
      //附件
      if(contentinstanceofMultipart){
        messagePart=((Multipart)content).getBodyPart(0);
        System.out.println("");
      }
      //猎取content范例
      StringcontentType=messagePart.getContentType();
      //假如邮件内容是纯文本大概是HTML,那末打印出信息
      System.out.println("CONTENT:"+contentType);
      if(contentType.startsWith("text/plain")||
        contentType.startsWith("text/html")){
        InputStreamis=messagePart.getInputStream();
        BufferedReaderreader=newBufferedReader(newInputStreamReader(is));
        StringthisLine=reader.readLine();
        while(thisLine!=null){
          System.out.println(thisLine);
          thisLine=reader.readLine();
        }
      }
      System.out.println("--------------END---------------");
    }catch(Exceptionex){
      ex.printStackTrace();
    }
  }
}

诸如RMI,EJB等一些技术并不是你说的那么复杂,而是它们把一些复杂的工具封装成不复杂的工具了,理解这些工具是需要些时间。我问你,.net网页编程里有这些工具吗?要简单多少?。

透明 发表于 2015-1-20 21:37:31

象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

第二个灵魂 发表于 2015-1-22 10:13:09

是一种将安全性(Security)列为第一优先考虑的语言

灵魂腐蚀 发表于 2015-1-29 07:14:23

你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。

因胸联盟 发表于 2015-1-31 06:30:49

那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!

飘灵儿 发表于 2015-1-31 15:31:19

一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。

飘飘悠悠 发表于 2015-2-6 19:58:31

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

不帅 发表于 2015-2-18 11:48:38

设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧

小女巫 发表于 2015-2-24 23:27:28

任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言

柔情似水 发表于 2015-3-3 11:37:41

是一种使用者不需花费很多时间学习的语言

乐观 发表于 2015-3-11 10:24:40

其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。

蒙在股里 发表于 2015-3-18 05:02:07

你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。

老尸 发表于 2015-3-25 12:17:04

是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
页: [1]
查看完整版本: 发布一篇[JAVA100例]048、利用JavaMail吸收邮件