public static void main(String[] args) throws MessagingException, IOException {
String imapserver = "******"; // 邮件服务器
String user = "*****";
String pwd = "****"; // 根据自已的密码修改
// 获取默认会话
Properties prop = System.getProperties();
prop.put("mail.imap.host",imapserver);
// prop.put("mail.imap.auth.plain.disable","true");
Session mailsession=Session.getInstance(prop,null);
mailsession.setDebug(false); //是否启用debug模式
IMAPFolder folder= null;
IMAPFolder tobedeterminedFolder=null;
IMAPStore store=null;
int total= 0;
try{
store=(IMAPStore)mailsession.getStore("imap"); // 使用imap会话机制,连接服务器
store.connect(imapserver,user,pwd);
folder=(IMAPFolder)store.getFolder("INBOX"); //收件箱
folder.open(Folder.READ_WRITE);
Message[] msgs =folder.getMessages();
//获取总邮件数
total = folder.getMessageCount();
System.out.println("-----------------您的邮箱共有邮件:" + total+" 封--------------");
// 得到收件箱文件夹信息,获取邮件列表
System.out.println("\t收件箱的总邮件数:" + msgs.length);
System.out.println("\t未读邮件数:" + folder.getUnreadMessageCount());
System.out.println("\t新邮件数:" + folder.getNewMessageCount());
System.out.println("----------------End------------------");
//注意下面这里是通过folder.getFolder("folderName");
//用store.getFolder("folderName");我这邮箱测试不通过
//TO-BE-DETERMINED这个文件夹是我自己建立的
//文件夹目录结构如下:
//INOBX
//--Spam
//--Drafts
//--TO-BE-DETERMINED
//--Trash
//--Sent
tobedeterminedFolder= (IMAPFolder) folder.getFolder("TO-BE-DETERMINED");
//只测试移动一封邮件到其他目录
for (Message message2 : msgs) {
System.out.println("message Folder:"+message2.getFolder().getName());
folder.copyMessages(new Message[]{message2}, tobedeterminedFolder);
message2.setFlag(Flags.Flag.DELETED, true);
break;
}
}
catch(MessagingException ex){
ex.printStackTrace();
}finally {
// 释放资源
try{
if(tobedeterminedFolder!=null && tobedeterminedFolder.isOpen()){
tobedeterminedFolder.close(true);
System.out.println("close....");
}
if(folder!=null && folder.isOpen()){
folder.close(true);
}
if (store != null){
store.close();
}
}catch(Exception bs){
bs.printStackTrace();
}
}
}
分享到:
相关推荐
POP协议允许电子邮件客户端下载服务器上的邮件,但是在电子邮件客户端的操作(如:移动邮件、标记已读等),不会反馈到服务器上。 IMAP协议允许电子邮件客户端下载服务器上的邮件,电子邮件客户端的操作都会反馈到...
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、...
Android是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的移动操作系统,主要应用于移动设备,如智能手机和平板电脑。该系统最初由安迪·鲁宾开发,后被Google公司收购并注资,随后与多家硬件制造商、软件...
简单的邮件收发系统,界面简单。内容相对比较简单。
之前用163邮箱发邮件时明明是成功的,但是使用中国移动自己的邮箱时,无论如何在linux服务器中都发送不成功。下面小编给大家说下我是怎么解决的,一起看下吧
目前EmailKit支持的电子邮件协议有SMTP和IMAP,它支持的功能有发送邮件,下载附件、获取文件夹列表、读取邮件、加载邮件、同步邮件,对邮件消息的移动,删除,保存到草稿箱等操作,同时支持邮箱的新邮件消息推送...
课程设计时用NetBeans写的一个Java邮件客户端,直接点击运行EmailClient.jar,其它的文件不要随便移动。 这只是各JAR包形式的程序,具体源程序以后在发上来,若有疑问可请发邮件告知(在内)。
《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的所有实例的源代码,实例名称及其所处章节如下: 第1章 JSP技术概述 实例1 第一个JSP页面 第3章 Web开发基础 实例2 HTML与JavaScript交互...
JSP网络编程从基础到实践的实例代码 《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的所有实例的源代码,实例名称及其所处章节如下: 第1章 JSP技术概述 实例1 第一个JSP页面 第3章 Web...
《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的所有实例的源代码,实例名称及其所处章节如下: 第1章 JSP技术概述 实例1 第一个JSP页面 第3章 Web开发基础 实例2 HTML与JavaScript交互...
实例63 用servlet获取表单数据 实例64 用servlet读写文件数据 实例65 用servlet访问数据库 实例66 一个简单的struts应用实例——用户登录 JSP中的JavaMail开发 实例67 发送文本格式的邮件 ...
它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的...
4.12.3 将游标移动到指定行 4.12.4 获得游标位置 4.13 可更新的ResultSet 4.13.1 更新ResultSet 4.13.2 插入一新行 4.13.3 删除行 4.14 观察ResultSet中的变化 4.15 RowSet对象 4.16 创建RowSet和设置属性 ...
4.12.3 将游标移动到指定行 4.12.4 获得游标位置 4.13 可更新的ResultSet 4.13.1 更新ResultSet 4.13.2 插入一新行 4.13.3 删除行 4.14 观察ResultSet中的变化 4.15 RowSet对象 4.16 创建RowSet和设置属性 ...
4.12.3 将游标移动到指定行 4.12.4 获得游标位置 4.13 可更新的ResultSet 4.13.1 更新ResultSet 4.13.2 插入一新行 4.13.3 删除行 4.14 观察ResultSet中的变化 4.15 RowSet对象 4.16 创建RowSet和设置属性 ...
4.12.3 将游标移动到指定行 4.12.4 获得游标位置 4.13 可更新的ResultSet 4.13.1 更新ResultSet 4.13.2 插入一新行 4.13.3 删除行 4.14 观察ResultSet中的变化 4.15 RowSet对象 4.16 创建RowSet和设置属性 ...
JavaMail API提供了独立于平台和协议的框架来构建邮件和消息传递应用程序。 运行应用程序 在Windows上 # # Build application from base directory using Maven Wrapper mvnw.cmd clean install # # Run tomcat7 ...