FansMail:邮件发送标准API与技术实现(Java)

来源:互联网 发布:网络测线仪 编辑:程序博客网 时间:2024/05/16 23:45

发送邮件,是Web系统等IT建设中最常见的一种功能。

我对最常见的一种需求进行了抽象和封装,定义了一套标准的API,并且使用Java技术实现。

项目信息

项目名称:FansMail

项目作者:LeiWen

联系方式:LeiWen@FansUnion.cn

当前版本:1.0.2

日期:2013年12月12日


邮件发送API

/**     * 发送邮件。     *     * @param toList     *            收件人列表     * @param ccList     *            抄送人列表     * @param bccList     *            暗送人列表     * @param subject     *            邮件主题     * @param content     *            邮件正文     * @param attachmentList     *            附件列表     * @throws EmailException     */    sendEmail(List<String> toList, List<String> ccList,            List<String> bccList, String subject, String content,            List<EmailAttachment> attachmentList) throws EmailException

简化API

下面几个API实际上是对上面的API的封装,方便调用而已。


  

 sendEmail(List<String> toList, String subject, String content) throws EmailException   sendEmail(List<String> toList, String subject, String content,            List<EmailAttachment> attachmentList) throws EmailException   sendEmail(List<String> toList, List<String> ccList,            String subject, String content, List<EmailAttachment> attachmentList)            throws EmailException    sendEmail(List<String> toList, List<String> ccList,            List<String> bccList, String subject, String content)            throws EmailException

下载

Jar包

FansMail-1.0.2.jar  http://fansunion.cn/download/FansMail-1.0.2.jar

依赖的Jar包

activation-1.1.jar,mail-1.4.jar,commons-email-1.2.jar

使用示例下载地址:http://fansunion.cn/download/FansMail-1.0.2-demo.zip


使用示例

package test;import java.util.ArrayList;import java.util.List;import org.apache.commons.mail.EmailException;import cn.fansunion.common.email.EmailSender;/** * 发送Html格式,不带附件的邮件。 * * @author leiwen@fansunion.cn * *         小雷团队:http://FansUnion.cn * *         QQ:240-370-818 */public class SendHtmlEmail {    public static void main(String[] args) throws EmailException {        testHtmlEmail();    }    public static void testHtmlEmail() throws EmailException {        //邮件类型,true表示Html邮件,false表示纯文本邮件        EmailSender emailSender = new EmailSender(true);        // 接收者邮箱        String subject = "FansMail测试-Html邮件!";        String content = "test";        String to = "leiwen@fansunion.cn";        List<String> list = new ArrayList<String>();        list.add(to);        emailSender.sendEmail(list, subject, content);    }}

配置文件

email.properties,需要放在CLASSPATH下,src的根目录即可

mail.smtp.host=smtp.qq.com

mail.smtp.from=leiwen@fansunion.cn

mail.smtp.name=leiwen@fansunion.cn

mail.smtp.password=yourpassword

mail.smtp.charset=UTF-8
mail.smtp.debug = false

Demo效果

FansMailDemo

致歉

1.API功能很弱,正在进一步丰富中。

2.暂时没有公开源码的打算。

  我在思考,未来是否可以通过售卖工具组件的方式“养活”自己。

  正在尝试中,程序员加油!

程序员的生存和价值

   我一直在想,是否有必要把自己写的代码都“开源”。

  软件作为一种逻辑产品,在中国,价值很低。普通用户,包括程序员,都喜欢免费使用别人的产品。一听到要“付费”,就不用了,或者用盗版。 传统的实物生产,比如沙发等,都是值钱的,即使价格不高。

   未来会出现这种情况么,程序员不用在公司上班,靠写代码生存。比如我写了一个工具,例如本文提到的API,会有人付费么?或者,我在家办公,如果有人需要代码、API、组件、软件系统,就会联系我,然后双方合作。

   作为一个程序员,我表示很纠结!!!

原文链接:http://blog.fansunion.cn/articles/3448(小雷博客-blog.fansunion.cn)

0 0
原创粉丝点击