文档章节

Java中发邮件的6种方法

jtn
 jtn
发布于 2015/04/13 15:09
字数 439
阅读 29
收藏 1

1.官方标准JavaMail

Sun(Oracle)官方标准,功能强大,用起来比较繁琐。

官方资料:http://www.oracle.com/technetwork/java/javamail/index.html

2.第三方实现

2.1Apache Commons-Email
通过封装JavaMail,提供了常见的功能。
官方资料:http://commons.apache.org/proper/commons-email/

2.2Spring Mail
与Spring很好的集成,可以在使用Velocity 模版语言。
官方资料:http://static.springsource.org/spring/docs/3.0.x/reference/mail.html

2.3Jodd Mail
与Apache Commons-Email类似,都是对JavaMail的进一步封装。
官方资料:http://jodd.org/doc/email.html

3.自定义

3.1自己进一步封装
  对Apache Commons-Email进一步封装。(可能有必要,也可能没有)

3.2完全重新实现
  掌握SMTP等协议,实现协议。(高端用户可能有这个需求)
 
 
4.几点看法
 
 4.1象发邮件这种功能,非常实用。使用别人的工具包可以大大提高自身的开发效率。
 一般来说,发邮件不是一个项目或产品的核心业务。
 
 4.2发邮件等常用功能,有很多种实现方式。每种方式都各有优缺点,都有各自的适应场景。
 了解多种实现,掌握几种就够了,全部掌握太难了,时间远远不够。
 
 4.3调用API发邮件很简单,但是要完全理解发邮件的过程一点也不简单。
    需要深入理解SMTP等协议,如果收邮件又需要理解POP3和IMAP等协议。
    
 4.4SMTP、HTTP等应用层协议,TCP/IP等底层协议,想要自称“技术大牛”的人,都应该深入理解吧?
 
 4.5IT行业和其它行业没有什么不同,大部分情况都是“拼学习的愿望和时间”,然后才是“拼学习的能力和智力”。

© 著作权归作者所有

jtn

jtn

粉丝 12
博文 879
码字总数 879609
作品 0
武汉
程序员
私信 提问
Java 9 已在路上,公共审查规范草案出来了

Oracle 的 Iris Clark 在发送给 OpenJDK 邮件列表的邮件中宣布,Java 9 的公共审查规范草案已可用。并表示,如果所有人都对草案感到满意,会将其提交给 JCP 项目管理办公室(PMO),以便下星...

王练
2017/03/11
3.9K
10
commons-email发邮件

记得曾经学习用javamail发邮件,学了2天,大概搞明白了利用javamail发邮件的方法和注意事项。 这周末在网上闲逛时,发现了另外一个发邮件的好东东。 commons-email-1.1.jar: 这是Apache组织下...

enzozhong
2013/02/14
623
0
【科普】JavaEE的核心技术

java的大方向就是JavaEE,JavaEE不仅仅是socket编程,具体包括13种核心技术。 JAVAEE的核心API与组件 JAVAEE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于W...

花的鱼
2018/06/26
11
0
Java 5 、6、 7中新特性

JDK5新特性(与1.4相比)【转】 1 循环 for (type variable : array){ body} for (type variable : arrayList){body} 而1.4必须是: for (int i = 0; i < array.length; i++){ type variabl......

thinkyoung
2014/10/14
0
0
JavaEE的核心API与组件

JAVAEE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对JAVAEE中的13种技术规范进行简单的描述(限于篇幅,这里只进行简单的...

明理萝
2018/08/06
4
1

没有更多内容

加载失败,请刷新页面

加载更多

Mybatis Plus删除

/** @author beth @data 2019-10-17 00:30 */ @RunWith(SpringRunner.class) @SpringBootTest public class DeleteTest { @Autowired private UserInfoMapper userInfoMapper; /** 根据id删除......

一个yuanbeth
今天
4
0
总结

一、设计模式 简单工厂:一个简单而且比较杂的工厂,可以创建任何对象给你 复杂工厂:先创建一种基础类型的工厂接口,然后各自集成实现这个接口,但是每个工厂都是这个基础类的扩展分类,spr...

BobwithB
今天
5
0
java内存模型

前言 Java作为一种面向对象的,跨平台语言,其对象、内存等一直是比较难的知识点。而且很多概念的名称看起来又那么相似,很多人会傻傻分不清楚。比如本文我们要讨论的JVM内存结构、Java内存模...

ls_cherish
今天
4
0
友元函数强制转换

友元函数强制转换 p522

天王盖地虎626
昨天
5
0
js中实现页面跳转(返回前一页、后一页)

本文转载于:专业的前端网站➸js中实现页面跳转(返回前一页、后一页) 一:JS 重载页面,本地刷新,返回上一页 复制代码代码如下: <a href="javascript:history.go(-1)">返回上一页</a> <a h...

前端老手
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部