java实现收取Pop3邮件

简介: 以前玩Net的时候自己花了差不多一个暑假的时间来实现一个收取Pop3邮件的组件,所以记忆尤为深刻~呵呵今天无意看见Apache下的一个子项目Commons,其用途是专门做一些常用的开发组件包比如DBPool什么的详细信息可以看这里http://jakarta.

以前玩Net的时候自己花了差不多一个暑假的时间来实现一个收取Pop3邮件的组件
,所以记忆尤为深刻~呵呵
今天无意看见Apache下的一个子项目Commons,其用途是专门做一些常用的开发组件包
比如DBPool什么的
详细信息可以看这里
http://jakarta.apache.org/commons/index.html

其中有个Net包,里面包含来支持多达如下几种协议的组件:
Supported protocols are:

  • FTP
  • NNTP
  • SMTP
  • POP3
  • Telnet
  • TFTP
  • Finger
  • Whois
  • rexec/rcmd/rlogin
  • Time (rdate) and Daytime
  • Echo
  • Discard
  • NTP/SNTP

呵呵!真强~~
其中就包含Pop3邮件收取协议
于是开工哦!~

首先先下一个这个包回来附加到Eclipse项目中
下包可以在这里
http://mirror.vmmatrix.net/apache/jakarta/commons/net/binaries/commons-net-1.4.1.zip


然后新建一个Demo.java类,敲下如下代码:就可以收信了~简单,当然你还要按照你的地区再编一次码,否则中文显示为

package Test;
import java.io.Reader;
import java.io.BufferedReader;

import org.apache.commons.net.pop3.POP3Client;
import org.apache.commons.net.pop3.POP3MessageInfo;

public class Demo {

   
public static void main(String[] args) {
        POP3Client pop3
= new POP3Client();
       
try {
            pop3.setDefaultPort(
110);

            pop3.connect(
"pop.qq.com");
           
// 我测试的是QQ邮件~
           
// 输入你的QQ号作为油箱名称 QQ密码作为邮箱密码
            if (pop3.login("油箱名称", "邮箱密码")) {

                POP3MessageInfo[] p3m
= pop3.listMessages();

                System.out.println(
"您一共有" + p3m.length + "封信件");
               
for (POP3MessageInfo obj : p3m) {
                   
int id = obj.number;// 获得信件在服务器端的唯一编码

                    Reader red
= pop3.retrieveMessage(id);
                    BufferedReader br
= new BufferedReader(red);
                   
while (br.readLine() != null) {
                        System.out.println(br.readLine());
                    }
                }
            }

            pop3.logout();
            pop3.disconnect();
        }
catch (Exception e) {
           
// TODO Auto-generated catch block
            System.out.println("失败");
            e.printStackTrace();
        }

    }
}

目录
相关文章
消息中间件 缓存 监控
122 0
|
6月前
|
Java
使用java底层实现邮件的发送(含测试,源码)
使用java底层实现邮件的发送(含测试,源码)
|
4月前
|
Java API Maven
如何在Java中实现邮件发送功能?
如何在Java中实现邮件发送功能?
|
5月前
|
前端开发 Java 网络安全
基于Java Socket实现的SMTP邮件客户端 - 全面支持SSL, TLS
基于Java Socket实现的SMTP邮件客户端 - 全面支持SSL, TLS
60 0
|
6月前
|
Java API 数据安全/隐私保护
【亮剑】如何在Java项目中结合Spring框架实现邮件发送功能
【4月更文挑战第30天】本文介绍了如何在Java项目中结合Spring框架实现邮件发送功能。首先,需在`pom.xml`添加Spring和JavaMail依赖。然后,在`applicationContext.xml`配置邮件发送器,包括SMTP服务器信息。接着,创建一个使用依赖注入的`EmailService`类,通过`JavaMailSender`发送邮件。最后,调用`EmailService`的`sendSimpleEmail`方法即可发送邮件。最佳实践包括:使用配置管理敏感信息,利用`MimeMessage`构造复杂邮件,异常处理和日志记录,以及在大量发送时考虑使用邮件队列。
118 1
|
6月前
|
Java 数据安全/隐私保护 Windows
java实现邮件发送准备工作(前期配置)
java实现邮件发送准备工作(前期配置)
|
Java 数据安全/隐私保护
【Java用法】java使用javax.mail读取邮箱,SpringBoot javax.mail获取邮件内容,根据时间段筛选邮件,内附代码,拿来即用
【Java用法】java使用javax.mail读取邮箱,SpringBoot javax.mail获取邮件内容,根据时间段筛选邮件,内附代码,拿来即用
300 0
|
Java
【Java】SpringBoot邮件发送实现
这里我用的是网易免费企业邮箱。参数请不要照抄,改成适合自己的。
173 0
java邮件提醒实现
最近做项目的时候,有这样一个需求,因为项目中的流程是分级流转审批的过程,所以当前人操作完成之后,需要程序的一个固定邮箱通过邮件通知下级相应人员进行处理,所以也就有了小编今天的这篇博文。
使用java底层实现邮件的发送(含测试,源码)
直接上代码:3个类,两个主要的类,一个测试类: 主类(Mail):