使用JavaMail接收邮件的示例
2015-11-23 10:21
501 查看
String pop3Server = "服务器地址"; String protocol = "pop3"; String username = "用户名"; String password = "密码"; Properties prop = new Properties(); prop.setProperty("mail.store.protocol", protocol); prop.setProperty("mail.pop3.host", pop3Server); Session mailSession = Session.getDefaultInstance(prop); Store store = mailSession.getStore(); store.connect(pop3Server, username, password); Folder folder = store.getFolder("inbox"); // pop3类型 inbox文件夹 folder.open(Folder.READ_ONLY); System.out.println(folder.getMessageCount()); // 正常的话,会得到正确的数值
前天在宿舍,使用这段代码获取新浪邮箱的邮件,一切正常,今天早上在公司的电脑上跑,一直返回0,原以为是服务器端做了什么设置,限制了代码获取之类的。心灰意冷之际想到pop3和imap两个协议不是很清楚区别,就去看了下,这才知道原来pop3协议在客户端获取邮件之后服务器端不再保存(有些可以设置为服务器端保存副本),而我的outlook客户端设置了每分钟获取一次,而且每次往自己邮箱发送新邮件进行测试时,都有手动刷新确认新邮件到达的操作,进而导致服务器端一直在重复“接收新邮件,下载到客户端,删除新邮件”,也理所当然地代码会一直返回0!所以说,学习使用API,不只是知道API就行,必要的背景知识还是很重要的!
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 垃圾邮件过滤器 python简单实现
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树