美文网首页
javaMail企业开发环境下的使用

javaMail企业开发环境下的使用

作者: 散入风中 | 来源:发表于2018-07-19 11:06 被阅读0次

    1.通过登录验证的方式以获取session对象

    javaMail是一个以实现SMTP验证类(重写抽象类Authenticator的抽象方法PasswordAuthentication)来获取Session的解决方案,获取session之后,就可以得到一个基于mine协议的对象,从而进行邮件的操作。

    下面是一个简单的EailUtil封装格式:

    简单的封装格式1 简单的封装格式2

    这样就完成了基本的发送邮件的验证步骤的内容,下面来使用他,因为这个工具是在实际项目中使用的,所以隐藏部分代码,核心代码会一一备注。

    2.创建一个Session连接邮件服务

    在创建session之前,我们需要传输一些相关的参数给这次的会话连接,之后通过图中的方式获取session对象。

    获取session时需要配置相关的参数

    这里建议开启debug模式,设置session.setDebug(true)即可,开启后控制台会输出日志信息,也可以观察服务器的响应信息。

    3.创建一个基于mine协议的MineMessage邮件对象

    mineMessage对象是邮件的载体,封装着邮件的所有信息。

    通过new MineMessage(session)的方式得到该对象,参数为session会话连接对象。

    4.创建一封邮件

    邮件包含了几大基本要素:

    (1)发件人

    (2)收件人/抄送人/暗送人

    (3)回复人

    (4)标题

    (5)正文内容

    发件人和收件人在javamail中,使用Address类表示,它是一个抽象类,已知实现子类有IntenetAddress

    发件人 收件人

    图中红色标注的方法就是设置邮件的收件人/抄送人/暗送人,其中T0为收件人,CC为抄送人,BCC为暗送人

    对于回复人来说,我并没有在项目中使用,网上应该有相关的设置方法,需要使用的可以百度一下(百度就完事了)。

    我们还可以设置一些其他的东西,比如

    邮件的其他设置

    对于message中很多的方法都是设置邮件的一些信息,可以参考API。

    正文内容,也是邮件最重要的一个方面,包含了邮件传达的信息主体,这里正文内容包括了文字信息,图片以及附件。

    正文操作的基本格式

    先要获取一个Multipart对象,该对象是邮件正文总体的数据封装对象,之后创建一个BodyPart对象,他封装了邮件正文体包含的正文信息,在一个Multipart中,我们可以add多个BodyPart从而组成一封完整的邮件。

    这里添加了邮件正文(图中的sendHtml),在设置之前需要设置HTML的编码方式,默认忘了是什么格式了(。。。),一定要记住,在封装完BodyPart对象所承载的数据之后,调用multipart.addBodyPart()来将该BodyPart添加到邮件正文中。

    添加附件

    因为代码中没有使用附件的需求,所以写了一个附件的基本的操作方法

    也是和上边的文字信息差不多的操作,区别是需要用DataSource对象存储文件内容,已知实现类为FileDataSource,之后调用BodyPart的setDataHandler给这个数据封装体封装附件信息,最后将它添加至multipart中即可。

    最后,一定要将Multipart对象添加至邮件对象中

    5.发送邮件

    发送邮件操作

    发送之前先保存邮件,之后调用Transport.send()即可发送,参数分别为message(邮件体对象)和address(收件人邮箱地址),这里还给大家写了一段不采用SSL加密的发送方式,但是一般来说在企业中都是采用的,所以也不和大家详细叙述了,有兴趣的朋友可以研究研究。

    相关文章

      网友评论

          本文标题:javaMail企业开发环境下的使用

          本文链接:https://www.haomeiwen.com/subject/dwtapftx.html