文档详情

(二)【Java】Spring进阶—如何用Java代码实现邮件发送.doc

发布:2017-03-28约1.57千字共8页下载文档
文本预览下载声明
【Java】Spring进阶—如何用Java代码实现邮件发送 ——成都源代码教育专业整理关于Java等技术性文章。 在一些项目里面如进销存系统,对一些库存不足发出预警提示消息,招聘网站注册用户验证email地址等都需要用到邮件发送技术。 ??? 发送邮件可能大家都觉得简单,打开浏览器,登录邮箱,写信,发送邮件?那么我们这里讲的可是直接使用Java代码实现邮件发送。 方案一: 可以直接使用SUN的JavaMail可以发送邮件,不过代码写起来很麻烦。 如果手写过JavaMail发送邮件,就会深知其api之繁琐。 利用apache的Email,可以快捷的实现邮件的发送, 具体教程可以参考官网的:?/email/userguide.html。 Spring也提供了一个发送电子邮件的高级抽象层,它向用户屏蔽了底层邮件系统的一些细节,同时代表客户端负责底层的资源处理。 Spring邮件抽象层的主要包为org.springframework.mail。它包括了发送电子邮件的主要接口MailSender,和值对象SimpleMailMessage,它封装了简单邮件的属性如from,?to,cc,?subject,text。? 包里还包含一棵以MailException为根的checked?Exception继承树,它们提供了对底层邮件系统异常的高级别抽象。 ? ? ? 二、Spring配置文件email-163.xml ? 三、Junit ? ? 成功运行,需要修改email-163.xml里面的用户名和密码的配置,以及测试文件里面的setForm的内容。 ? 本次给大家分享的是spring怎样发送简单邮件,下次在和大家讲解附件的发送、内嵌html、模版文件的发送。 Multipart?email允许添加附件和内嵌资源(inline?resources); 使用一个简单的JPEG图片作为附件,android.png放在工程的根目录,以相对路径的方式加载。 ? ? 内嵌资源可能是你在信件中希望使用的图像或样式表,但是又不想把它们作为附件。 ? ? 内嵌资源源使用Content-ID(上例中是android.png)来插入到mime信件中去。 加入文本和资源的顺序是非常重要的。 首先,先加入文本,随后是资源。 如果顺序弄反了,它将无法正常运作哦! ? ? 在之前的代码示例中,所有邮件的内容都是显式定义的,并通过调用message.setText(..)来设置邮件内容。? ? 而在企业级应用程序中,?基于如下的原因,可能不会以上述方式创建你的邮件内容: 1.使用Java代码来创建基于HTML的邮件内容不仅容易犯错,同时也是一件麻烦的事情 2.将无法将显示逻辑和业务逻辑很明确的区分开 3.一旦需要修改邮件内容的显式格式和内容,你需要重新编写Java代码,重新编译,重新部署…… ? ? 一般来说解决这些问题的典型的方式是使用FreeMarker或者Velocity这样的模板语言来定义邮件内容的显式结构。? 这样,只要创建在邮件模板中需要展示的数据,并发送邮件即可。 通过使用Spring对FreeMarker和Velocity的支持类,?你的邮件内容将变得简单,这同时也是一个最佳实践。 下面是一个使用Velocity来创建邮件内容的例子:? ? ? ? 二、Classpath路径添加模版文件velocity.vm ? ???三.模型对象User ? ??四、WelcomeService业务对象 ? ? ? ??六、等着收邮箱吧 ? 你还在等什么,赶紧试试吧。
显示全部
相似文档