首页 > 编程语言 >JavaMail收发邮件的步骤

JavaMail收发邮件的步骤

时间:2023-04-30 17:37:39浏览次数:33  
标签:Session 获取 MimeBodyPart 收发 实例 JavaMail Message 邮件


 发邮件

1) 获取Session

n()方法

ii) New一个上面类的实例,设置用户名和密码

 and mail.smtp.auth属性

iv) 同过Session的静态方法,获取一个Session实例

2) 生成Message

i) 没有附件的邮件

 第一步:new一个MimeMessage实例(根据Session)

 第二步:给Message实例设置subject、text属性

ii) 有附件的邮件

 第一步:根据Session new一个MimeMessage实例(Message)

 第二步:设置Message subject属性

 第三步:new一个MimeBodyPart实例 和 Mulipart(MimeMulipart)实例

 第四步:给MimeBodyPart实例设置邮件文本内容

 第五步:将MimeBodyPart实例,添加到Mulipart实例

 第六步:根据附件数循环:

         New MimeBodyPart实例

         获取FileDatasource

         将FileDatasource设置到MimeBodyPart

         设置MimeBodyPart的文件名

         将MimeBodyPart添加到 Mulipart

 第七步:将Mulipart设置成MimeMessage的内容

3) 发送邮件

i) 设置Message的fromAddress,toAddress,ccAddress,bccAddress

   

 收邮件

1)new Properties实例,设置mail.pop3.host 的值

2)获取Session实例

3)根据Session,获取Store实例

4)连接store

5)获取Index文件夹

6)打开文件夹

7)获取文件夹里面所有Message

8)用FetchProfile优化Message的查找

 

 

 

 

 

9)判断Message的MimeType类型如果是text/*类型,直接可以从Message从获取邮件from 地址、标题和内容,否则执行下面的步骤

10)从Message中获取Multipart

11)遍历Multipart中的BodyPart

12)判断bodyPart的Disposition是否是Part.ATTACHMENT

13)如果不是,直接获取bodyPart里面的content

14)否则获取bodyPart的文件名和文件流(inputstream),将流写入本地文件,实现附件的下载

标签:Session,获取,MimeBodyPart,收发,实例,JavaMail,Message,邮件
From: https://blog.51cto.com/u_548275/6237903

相关文章

  • jenkins如何配置邮件
    看板--系统管理--配置......
  • springboot 发送邮件
    @AutowiredprivateJavaMailSenderjavaMailSender;publicStringsendEmail(ToMailtoMail){SimpleMailMessagemessage=newSimpleMailMessage();message.setFrom("[email protected]");message.setTo("my_M......
  • python 发邮件 图片作附件
    importsmtplibfromemail.mime.textimportMIMETextfromemail.mime.multipartimportMIMEMultipartfromemail.mime.imageimportMIMEImage#邮件发件人和收件人信息sender_email='你的Gmail地址'sender_password='你的Gmail密码'recipient_email='收......
  • 基础备忘(发送htm正文带图片并且带附件的邮件)
    需求背景如下:发送htm正文带图片并且带附件的邮件。如题所示,任务拆解关键字为:html正文带图片带附件先介绍普通发邮件的方式添加maven引用<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</ar......
  • 接单日记(二)SMTP发送邮件
    目录接单日记(二)SMTP发送邮件一、实验目的二、实验内容三、程序及结果1、运行程序2、运行结果接单日记(二)SMTP发送邮件此为一个实验报告,故遵守实验报告的格式。一、实验目的熟悉SMTP发送邮件的原理使用SMTP实现自动化发送邮件的功能熟练在实际场景中使用装饰器,提高代码......
  • ASEMI代理ADI亚德诺ADM2582EBRWZ工业级隔离式收发器
    编辑-ZADM2582EBRWZ是ADI推出的一款带隔离的RS-485/RS-422收发器芯片,采用专利的iCoupler隔离技术,可以提供高达2.5kV的隔离电压,具有超高带宽和低功耗等优势,适用于工业自动化、仪器仪表、通信设备等领域。 一、iCoupler隔离技术 ADM2582EBRWZ采用了ADI专利的iCoupler隔离技术......
  • 汉源高科1路百兆FX光口+4路百兆电口工业级以太网交换机工业导轨式四口工业级光纤收发
    汉源高科HY5700-4514F-SC20系列工业级光纤收发器支持1个百兆光纤接口,4个百兆以太网电接口。用户可根据工业应用现场的实际需要,选择合适的光纤的接口类型以及光接口的传输距离。汉源高科HY5700-4514F-SC20工业级光纤收发器支持超宽电压输入范围,可提供双电源冗余接入。该系列专门针对......
  • 设计模式-原型模式-Java中使用示例-节日发送邮件活动
    场景设计模式-原型模式-浅克隆和深克隆在Java中的使用示例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/127576328上面初步记录了原型模式的使用示例,下面再记录一个银行节假日或者搞活动时发送邮件的例子。原型模式原型模式(PrototypePattern)的简单程度仅次......
  • python发邮件|4-20
    SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。首先,我们来构造一个最简单的纯文本邮件:fromemail.mime.textimportMIMETextmsg=MIMEText('hello......
  • 全志v851s 的uart3 设置成普通串口收发
    本文转载自:https://bbs.aw-ol.com/topic/3281/由于UART0被设定为系统dubug输出(简单来说就是将ttyS0设定为console),所以使用UART3作为普通的串口,进行与别的设备通信。1.查看硬件电路图SCH_Schematic1_2022-11-23,查看uart3的TXRXpin脚电路图pdf路径:Yuzukilizard/Hardware/......