Pop3QQMail

import java.util.Properties;

import javax.mail.Flags;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import javax.mail.Store;
import javax.mail.search.FlagTerm;

import com.sun.mail.pop3.POP3Folder;

/**
 *Pop3未实现对接收邮件的已查看,未查看的区分,可以有和IMAP同样的写法,但不起作用
 */
public class Pop3QQMail
{

    /**
     * @param args
     */
    public static void main(String[] args)
    {
        try
        {
            String host = "pop.qq.com";
            String username = "[email protected]";
            String password = "xxxxxxxxxxxx";

            Properties p = new Properties();
            p.setProperty("mail.pop3.host", "pop.qq.com"); // 按需要更改
            p.setProperty("mail.pop3.port", "995");
            // SSL安全连接参数
            p.setProperty("mail.pop3.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
            p.setProperty("mail.pop3.socketFactory.fallback", "true");
            p.setProperty("mail.pop3.socketFactory.port", "995");

            Session session = Session.getDefaultInstance(p, null);
            Store store = session.getStore("pop3");
            store.connect(host, username, password);

//            Folder folder = store.getFolder("INBOX");
            
            Folder inbox  = (POP3Folder)store.getFolder("Inbox"); //取得收件箱对象
            inbox.open(Folder.READ_WRITE);
            
            FlagTerm ft = new FlagTerm(new Flags(Flags.Flag.SEEN), false); //false代表未读,true代表已读
            
            
            Message message[] = inbox.search(ft); //根据设置好的条件获取message 
            
            System.out.println("邮件数量: " + message.length);
            new GetMailInfoThread(message).start();
        } catch (NoSuchProviderException e)   {
            e.printStackTrace();
        } catch (MessagingException e) {
            e.printStackTrace();
        }
    }

}

猜你喜欢

转载自blog.csdn.net/guchunchao/article/details/81318426
pop