java: javamail 1.6.2 Create Receive Email using jdk 19

2023-10-31

	    /**
	     * 接收邮件
	     * 中文是乱码 未解决
	     * @param pop3Host   pop.163.com
	     * @param storeType pop3
	     * @param user  geovindu@163.com
	     * @param password  geovindu
	     * @author geovindu
	     * @serialData@
	     * 
	     * 
	     * **/
	    public static void DuReceiveEmail(String pop3Host,String storeType, String user, String password){
	    	Properties props = new Properties();
	    	props.put("mail.pop3.host", pop3Host);
	    	props.put("mail.pop3.port", "110");
	    	props.put("mail.pop3.starttls.enable", "false");
	    	props.put("mail.store.protocol", "pop3");
	     
	    Session session = Session.getInstance(props);	
	    try {  
	    	Store mailStore = session.getStore(storeType);
	    	mailStore.connect(pop3Host, user, password);
	     
	    	Folder folder = mailStore.getFolder("INBOX");
	    	folder.open(Folder.READ_ONLY);
	     
	    	Message[] emailMessages = folder.getMessages();
	    	System.out.println("Total Message - " 
	    			+ emailMessages.length);
	     
	       //Iterate the messages
	      for (int i = 0; i < emailMessages.length; i++) {
	       Message message = emailMessages[i];
	       Address[] toAddress = 
	       message.getRecipients(Message.RecipientType.TO);
	       System.out.println();  
	       System.out.println("Email " + (i+1) + "-");  
	       System.out.println("Subject - " + message.getSubject());  
	       System.out.println("From - " + message.getFrom()[0]); 
	     
	       System.out.println("To - "); 
	       for(int j = 0; j < toAddress.length; j++){
	    	   System.out.println(toAddress[j].toString());
	       }
	       System.out.println("Text - " + 
	    		   message.getContent().toString());  
	      }
	     
	       folder.close(false);
	       mailStore.close();
	    } catch (Exception e) {
	        e.printStackTrace();
	        System.err.println("Error in receiving email.");
	        }        
	    }
    
    /**
     * 接收邮件
     * 中文是乱码 未解决
     * @param pop3Host   pop.163.com
     * @param storeType pop3 imap
     * @param user  geovindu@163.com
     * @param password  
     * @author geovindu
     * 
     * 
     * **/
    public static void receiveEmail(String pop3Host, String storeType, String user, String password) {  
    		  try {  
    		   //1) get the session object  
    		   Properties properties = new Properties();  
    		   properties.put("mail.pop3.host", pop3Host);  
    		   Session emailSession = Session.getDefaultInstance(properties);  
    		     
    		   //2) create the POP3 store object and connect with the pop server  
    		   POP3Store emailStore = (POP3Store) emailSession.getStore(storeType);  
    		   emailStore.connect(user, password);  
    		  
    		   //3) create the folder object and open it  
    		   Folder emailFolder = emailStore.getFolder("INBOX");  
    		   emailFolder.open(Folder.READ_ONLY);  
    		   //获取邮箱基本信息
   	       //   Map<String, Integer> map = DuMailHelper.emailInfo(emailFolder);
   	            //  System.out.println(map);
    		   //4) retrieve the messages from the folder in an array and print it  
    		   Message[] messages = emailFolder.getMessages();  
    		  // parseMessage(messages);
    		   
    		   for (int i = 0; i < messages.length; i++) {  
    		    Message message = messages[i];  
    		    System.out.println("---------------------------------");  
    		    System.out.println("Email Number " + (i + 1));  
    		    System.out.println("Subject: " + message.getSubject());  
    		    System.out.println("From: " + message.getFrom()[0]);  
    		    System.out.println("Text: " + message.getContent().toString());  
    		   }  
    		  
    		   //5) close the store and folder objects  
    		   emailFolder.close(false);  
    		   emailStore.close();  
    		  
    		  } catch (NoSuchProviderException e) {e.printStackTrace();}   
    		  catch (MessagingException e) {e.printStackTrace();}  
    		  catch (IOException e) {e.printStackTrace();}  
    	}  

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java: javamail 1.6.2 Create Receive Email using jdk 19 的相关文章

随机推荐

  • .NET MVC+EF CodeFirst+IOC+EasyUI 框架设计教程(概述)

    一 开发环境 Win7 VS2013 C SQL Server2008 R2 二 总体源代码结构如下 说明 这个分层按个人理解 不一定要照我的 如果做过开发 会三层架构之类的理解起来就容易 01 Infrastructure 基础构件 Ne
  • QGIS批量将分幅遥感影像合并

    要在QGIS中编程实现批量将分幅遥感影像拼接成完整影像 可以按照以下步骤进行操作 1 首先 确保已经安装并正确配置了QGIS Python环境 并导入所需的库 以下是代码的导入部分 from qgis core import QgsProj
  • 常见的金融术语——176个基础金融知识名词解释

    基金类 1 开放式基金 open end funds 指基金规模不是固定不变的 而是可以随时根据市场供求情况发行新份额或被投资人赎回的投资基金 2 封闭式基金 close end funds 指基金规模在发行前已确定 在发行完毕后及规定的期
  • 解决文字自动换行,字母、数字不换行问题

    添加css属性word break break all
  • mysql修改root密码的语句

    ALTER USER root localhost IDENTIFIED WITH mysql native password BY 新密码 其中 localhost 字符 有的小伙伴可能遇到过无法通过navicat连接Linux中的MyS
  • 单点登录SSO:可一键运行的完整代码

    单点登录方案不同于一个普通站点 它的部署比较繁琐 涉及到好几个站点 要改host 安装证书 配置HTTPS 看到的不少这方面示例都是基于HTTP的 不认同这种简化 1 它体现不出混合HTTP HTTPS时 单点注销要注意处理的问题 2 做单
  • 【Node.js】下载安装及简单使用

    说起Node js 它是当前市面上非常受欢迎的框架 允许我们使用JavaScript搭建后端应用 它有着种种优点 诸如 非阻塞I O 事件驱动 跨平台 高性能 单线程 等等等等 不过现在我们不必执拗与关心这些优点的含义 当务之急是先上手他
  • conda加速设置

    Conda作为使用最为便捷的python环境管理工具 可以协助我们很方便的下载安装第三方库 软件包等操作 但其在下载资源的过程中速度不言而喻 尤其是在更换国内源的情况下 下载速度没有实质性的改变是很令人头疼的一件事 Mamba 树眼镜蛇 能
  • (tensorflow学习)用Object Detection API实现摄像头实时物体检测

    对于物体识别 谷歌已经有训练好的模型供我们使用 图方便不想自己训练的可以直接使用 说实话 装这个tensorflow真心麻烦 我建议用anaconda环境搭建 还要注意装的话装1 几的版本就可 用gpu跑的话注意显卡型号和版本是否兼容 真是
  • 【C++】内存管理

    目录 一 C C 内存分布 二 C语言中动态内存管理方式 三 C 中动态内存管理 1 开辟空间 2 释放空间 四 operator new与operator delete函数 五 内存泄漏 1 什么是内存泄漏 2 如何避免内存泄漏 总结 一
  • Python的getattr方法

    getattr是Python中的内置函数 用于获取一个对象的属性值 这个函数是动态获取属性的一种方式 特别适用于你事先不知道要获取哪个属性 或者属性名是在运行时确定的情况 使用方法 getattr object name default o
  • 资产安全 错题点

    数据所有者 1 决定谁有权访问信息系统 2 对资产负有最终责任 PS 对资产负有最终责任的 高级管理层 数据所有者 首选管理层 3 行为规则 制定规则 以便用于主体的数据或信息的适当使用及保护 4 决定数据的级别 每年回顾确保数据分级的正确
  • 【国产化踩坑记】openEuler系统安装,nvidia驱动,cuda,anaconda安装步骤记录

    1 openEuler安装步骤 尝试安装了openEuler20 03和22 03两个版本 在摸索的过程中总结了一下步骤 以及相关问题的解决方案 进行简单记录 便于后续使用 1 openEuler20 03安装步骤 网络配置以及可视化操作界
  • Segmentation fault (core dumped) 错误的一种解决场景

    错误类型 Segmentation fault core dumped 产生原因 Segmentation fault 段错误 Core Dump 核心转储 是操作系统在进程收到某些信号而终止运行时 将此时进程地址空间的内容以及有关进程状态
  • Springboot+Axios双token解决token过期续签问题

    后端分离使用token进行登录验证时 由于token存在过期时间 每次token过期都需要用户重新登录的话 用户体验很不友好 假如token能跟session一样 如果用户持续在进行操作 就自动延长有效时间 就可以解决问题 但是 token
  • qt利用腾讯云服务器实现不同局域网的通信(tcp)

    网上大多数关于qt通信的文章都是同一局域网通信 这种根本没有达到自己想象中的那种通信的要求 不同局域网的通信 这里用到的方法是客户端发送消息给服务器 然后服务器再发送给另一个局域网的客户 首先我们需要购买一个腾讯云服务器 并在自己电脑登录腾
  • Python记11(网络传输大文件

    客户端 import socket tqdm os 传输数据分隔符 separator
  • log4j2入门(三) PatternLayout输出格式详解

    摘要 本节介绍Log4j的输出格式的详细说明 1 PatternLayout参数 charset 指定字符集 pattern 指定格式 alwaysWriteExceptions 默认为true 输出异常 header 可选项 包含在每个日
  • connect和bind

    UDP 考虑以下情形 我们使用UDP写一个echo程序 客户端模型 while fget sendto recvfrom 如果服务器进程没有启动会如何 通过截包发现服务器响应一个icmp port unreachable 不过这个ICMP错
  • java: javamail 1.6.2 Create Receive Email using jdk 19

    接收邮件 中文是乱码 未解决 param pop3Host pop 163 com param storeType pop3 param user geovindu 163 com param password geovindu autho