一、 发邮件
1) 获取Session
i) 实行一个Authentication类的子类,实行里面的public PasswordAuthentication getPasswordAuthentication()方法
ii) New一个上面类的实例,设置用户名和密码
iii) New一个Properties对象,设置mail.smtp.host 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
ii) Transport发送邮件
二、 收邮件
1)new Properties实例,设置mail.pop3.host 的值
2)获取Session实例
3)根据Session,获取Store实例
4)连接store
5)获取Index文件夹
6)打开文件夹
7)获取文件夹里面所有Message
8)用FetchProfile优化Message的查找
FetchProfile profile = new FetchProfile();
profile.add(FetchProfile.Item.ENVELOPE);
profile.add(FetchProfile.Item.FLAGS);
profile.add("X-Mailer");
inbox.fetch(msg, profile);
9)判断Message的MimeType类型如果是text/*类型,直接可以从Message从获取邮件from 地址、标题和内容,否则执行下面的步骤
10)从Message中获取Multipart
11)遍历Multipart中的BodyPart
12)判断bodyPart的Disposition是否是Part.ATTACHMENT
13)如果不是,直接获取bodyPart里面的content
14)否则获取bodyPart的文件名和文件流(inputstream),将流写入本地文件,实现附件的下载
分享到:
相关推荐
这里详细提供了javamail收发邮件的步骤,还有一个资源是源代码的,希望下载
(2) 使用SMTP邮件服务器发送邮件; (3) 邮件附件的发送与接受; (4) 删除邮件; 具体操作步骤如下: 1、打开javamailsystem文件夹,找到javamail.jar可执行文件,双击该执行文件,即可打开Javamail邮件收发系统...
(2) 使用SMTP邮件服务器发送邮件; (3) 邮件附件的发送与接受; (4) 删除邮件; 具体操作步骤如下: 1、打开javamailsystem文件夹,找到javamail.jar可执行文件,双击该执行文件,即可打开Javamail邮件收发系统...
(2) 使用SMTP邮件服务器发送邮件; (3) 邮件附件的发送与接受; (4) 删除邮件; 具体操作步骤如下: 1、 打开javamailsystem文件夹,找到javamail.jar可执行文件,双击该执行文件,即可打开Javamail邮件收发系统...
(2) 使用SMTP邮件服务器发送邮件; (3) 邮件附件的发送与接受; (4) 删除邮件; 具体操作步骤如下: 1、 打开javamailsystem文件夹,找到javamail.jar可执行文件,双击该执行文件,即可打开Javamail邮件收发系统...
springboot集成javamail,实现发送邮件的功能,可以发送文本类型邮件,也可以发送html格式的邮件,其中整合了mysql、mybatis 具体集成步骤可以参考我的文章: https://www.jianshu.com/p/668d320b4981
发送邮件的主要步骤 1.设置发送的协议,也就是设置smtp和验证机制(一般协议都是通过Properties键值形式来设置) 2.发送邮件需要的几个重要类Session ,Message,Transport 3.Session对象可以通过Session的getInstance...
主要介绍了Java使用JavaMail发送邮件的方法,结合实例形式分析了Java使用JavaMail实现邮件发送的具体步骤与相关实现代码,需要的朋友可以参考下
JAVA Web程序设计-3期(KC006) 13-1-2应用JavaMail组件发送邮件的操作步骤.doc 学习资料 复习资料 教学资源
SMTP协议:Simple Mail Transfer Protocol,即简单邮件传输协议,用于发送电子邮件 POP3协议:Post Office Protocol 3,即邮局协议的第三个版本,用于接收邮件 IMAP协议:Internet Message Access Protocol,即...
对JavaMail做了封装,简化发送邮件步骤,自带封装JavaMail源码
在需要发送邮件的类或者JSP中实现如下操作: 1) 导包 a) import com.jzscce.ccliu.mail.SendMail; 2) 在特定的方法中调用send方法 a) SendMail.send("邮件发送给谁就写谁的邮箱地址", "邮件标题","邮件内容");
java实现邮件发送,内有详细的注释,步骤详细,想要实现发送邮件的可以看一看。
Apache Commons Email库:用于更方便地发送邮件。 设计思路 我们将使用JavaMail和Apache Commons Email库来创建一个简单的电子邮件客户端。主要功能包括: 配置电子邮件服务器和账户信息。 发送电子邮件。 接收...
6、使用JavaMail发送注册验证邮件 7、不安全的用户名密码验证 8、用Session保存登录信息 9、面向对象分析通常分为三个步骤 10、使用DataSource接口连接数据源 11、避免表单重复提交的技术 12、表单的GET和POST方法的...
笔记记录应用程序,允许用户添加笔记,生成下载PDF并通过电子邮件发送笔记。 应用程序 : : 使用的技术和库 1,Spring MVC 2,Hibernate + MySql 3,Hibernate验证器 4,JavaMail API 5.iTextPDF库 6.html,css...
客户邮件云-Java / SMTP 一个Java库,用于将邮件发送到多个SMTP服务器,这些服务器的负载由DNS轮循机制分配。 可以代替JavaMail提供的Transport类使用它。要求JDK 1.6或更高版本JavaMail 1.4及更高版本建造如果要...
第16章 讲解使用Apache Commons FileUpload实现文件上传,同时讲解了JavaMail和如何运用Apache Commons Email组件发送邮件。 第17章 讲解DAO设计模式和分页显示,同时还讲解了Displaytag与Pager标记库。 第18章讲解...
不多说,懂得人看名字就能知道,挺好的一套案例,包含讲解视频和完整案例。 内容: 『课程目录』: ├─众筹项目-第01天《Atcrowdfunding》3 n7 ]2 w M, M1 ^ ^& P │ ├─代码 - G( G, ]4 n, n!...