java实现收取Pop3邮件

以前玩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();
        }

    }
}

### 回答1: 可以使用JavaMail API来实现邮件收取和发送。首先需要配置JavaMail API的相关信息,如邮件服务器地址、端口、账号和密码等。然后可以使用JavaMail API提供的类和方法来发送和接收邮件,如Session、MimeMessage、Transport等。具体实现步骤可以参考JavaMail API的官方文档或相关教程。 ### 回答2: Java实现邮件收取和发送可以使用JavaMail API。JavaMail API是一个用于发送和接收邮件Java标准扩展,它提供了一组类和方法来处理SMTP、POP3、IMAP等邮件协议。 首先,我们需要下载并导入JavaMail API的jar包,然后在代码中引入相关的类和方法。 要实现邮件收取,我们需要连接到邮件服务器,并通过协议(如POP3或IMAP)读取收件箱中的邮件。具体步骤如下: 1. 创建一个`Properties`对象,设置邮件服务器的一些属性,如主机名、端口等。 2. 创建一个`Session`对象,用于与邮件服务器建立连接,需要传递上一步中的`Properties`对象和认证信息。 3. 创建一个`Store`对象,用于连接到邮件服务器。 4. 打开`Store`连接。 5. 获取收件箱的`Folder`对象。 6. 打开`Folder`连接。 7. 遍历收件箱中的邮件,并进行相应的操作,比如获取邮件内容、附件、发送者等等。 8. 关闭连接。 要实现邮件发送,我们需要连接到邮件服务器,并通过协议(如SMTP)发送邮件。具体步骤如下: 1. 创建一个`Properties`对象,设置邮件服务器的一些属性,如主机名、端口等。 2. 创建一个`Session`对象,用于与邮件服务器建立连接,需要传递上一步中的`Properties`对象和认证信息。 3. 创建一个`MimeMessage`对象,用于构建邮件的内容。 4. 设置邮件的各种属性,如发送者、收件人、主题、内容、附件等等。 5. 创建一个`Transport`对象,用于连接到邮件服务器。 6. 打开`Transport`连接。 7. 发送邮件。 8. 关闭连接。 以上就是使用Java实现邮件收取和发送的基本步骤。在具体实现中,我们还可以添加一些额外的功能,如邮件的加密、认证等。 ### 回答3: JAVA可以使用JavaMail API来实现邮件收取和发送功能。 邮件收取可以通过POP3协议或IMAP协议来实现。使用JavaMail可以建立与邮件服务器的连接,然后通过相应的协议进行邮件收取。可以使用POP3协议的POP3Store类来实现通过POP3收取邮件,使用IMAP协议的IMAPStore类来实现通过IMAP收取邮件。在收取邮件时,需要提供邮件服务器的地址、端口、用户名和密码等信息。 邮件的发送可以通过SMTP协议来实现。使用JavaMail可以建立与邮件服务器的连接,并通过SMTP协议发送邮件。可以使用SMTPTransport类来发送邮件。在发送邮件时,需要提供邮件服务器的地址、端口、用户名和密码等信息,同时还需要设置发件人、收件人、主题、内容等邮件信息。 除了收取和发送邮件JavaMail还提供了许多其他功能,如附件的添加、HTML邮件的发送、收取邮件的附件下载等。 总的来说,通过JavaMail API,可以方便地实现邮件收取和发送功能,并且具有一定的灵活性,可以满足不同场景下的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值