使用Java Mail接收 Gmail 电子邮件

最近的工作需要使用Java来接收电子邮件,这里使用Gmail的imap协议,特别把代码整理一下,希望对大家有帮助:

 

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 
*/
package  com.deepfounder.BlogPlay.util.Mail;

/**
 *
 * 
@author  Andy
 
*/
import  java.util.ArrayList;
import  java.util.List;
import  java.util.Properties;
import  java.util.logging.Level;
import  java.util.logging.Logger;

import  javax.mail.Folder;
import  javax.mail.Message;
import  javax.mail.MessagingException;
import  javax.mail.NoSuchProviderException;
import  javax.mail.Session;
import  javax.mail.Store;

public   class  InboxReader {

    
public  List < Message >  ReadMailByIMAP(String username, String Password)  // 返回list类型的电子邮件列表。
    {
        java.util.List MessageList 
=   new  ArrayList();
        Properties props 
=  System.getProperties();
        props.setProperty(
" mail.store.protocol " " imaps " ); // 设置电子邮件协议

        
try  {
            Session session 
=  Session.getDefaultInstance(props,  null );
            Store store 
=  session.getStore( " imaps " );
            store.connect(
" imap.gmail.com " , username, Password);
            System.out.println(store);

            Folder inbox 
=  store.getFolder( " Inbox " );
            inbox.open(Folder.READ_ONLY);
            Message messages[] 
=  inbox.getMessages();
            
for  (Message message : messages) {
                MessageList.add(message);
                
// System.out.println(message.getSubject());
            }
        } 
catch  (NoSuchProviderException e) {
            e.printStackTrace();
            System.exit(
1 );
        } 
catch  (MessagingException e) {
            e.printStackTrace();
            System.exit(
2 );
        }
        
return  MessageList;

    }

    
public   static   void  main(String args[]) {
        InboxReader ir 
=   new  InboxReader();
        String username 
= " username " ; // 设置用户名
        String Password  =   " ************ " ; // 设置密码
        List < Message >  list =  ir.ReadMailByIMAP(username, Password);
        
for ( int  i = 0 ;i < list.size();i ++ ){
            
try  {
                System.out.println(list.get(i).getSubject());
            } 
catch  (MessagingException ex) {
                Logger.getLogger(InboxReader.
class .getName()).log(Level.SEVERE,  null , ex);
            }
        }
    }
}

 

 

转载于:https://www.cnblogs.com/MicroGoogle/archive/2010/11/03/Sending_Gmail_With_Java_Using_Imap.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值