一起来做Mail库
Mail是现在程序中不可或缺的一个模块。报警系统要发Mail、通知系统要发Mail。每天系统还要发形形色色的Report给各种不同level的人,给老板看报表,给小兵看异常,给客户看进展。
很多人觉得这家伙太简单了,网上随便copy一段代码,就通吃了。那还要这个库干嘛?
我只想问几个问题:
1、Mail Server地址变更了怎么办?登录帐户、密码变更了怎么办?
2、Mail系统异常了,要临时切换服务器,怎么办?
3、客户要求Mail格式变更怎么办?
4、从哪里翻查所有邮件的发送履历?怎样告诉客户,这个邮件我几点几分,通过哪个服务器发的?
我们这个库,就要解决这些问题。
他至少要实现如下的功能:
1、支持数据库、XML、Properties文件以及更多的定制化方式配置Mail的环境变量
2、灵活的Mail格式、附件支持
3、简单、易学的Mail模板功能
4、简单易用的log功能
5、轻松、简单的调用,比如:
1 Mail.newInstance()
2 .to("aa@a.com,bb@b.com")
3 .cc("cc@c.com")
4 .bcc("dd@d.com")
5 .title("Hello World")
6 .content("My First Mail")
7 .send();
或者更简单的:
Mail.newInstance()
.sendTemlateMail("a.template",properties");
我会用大概2个月的业余时间,完成这个库,诸君共勉!