手机站
网通分站
电信主站
密 码:
用户名:
热门关键字:  虚拟主机  cn域名  asd  ddd  域名注册
当前位置 : 主页>程序设计>Java技术>列表

使用Mailet处理邮件

来源:互联网 作者:west263.com 时间:2008-02-23 点击:
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

Mailet API是一个用来创建邮件处理程序的简单的API,它被配置在邮件服务器端执行,分匹配器和Mailet的接口两种,匹配器根据特定的条件匹配邮件消息,并触发响应的Mailet.

Mailet这个词是跟Servlet相似,功能也相似,他们的共同之处都是在服务器端触发并执行,只是servlet的Matcher通常是url的pattern,跟Servlet的接口一样,Mailet也有init()方法,service方法和destroy方法.即他们都有类似的生命周期.

Mailet的简单可编程接口可以用来做一些邮件处理,比如反垃圾邮件,检查邮件病毒以及邮件博客等等,利用移动设备可发送email的功能,可以做到手机通过mail发送信息到邮件服务器交给Mailet处理,形成移动博客的模型.

下面是一小段Hello World的Mailet代码:
package com.gdsean;
import org.apache.mailet.*;

public class HelloMailet
extends GenericMailet {
public void init() throws MessagingException {
}
public void service(Mail mail) throws MessagingException {
System.out.println("hello world");
}
}

package com.gdsean;
public class HelloMatcher extends GenericRecipientMatcher {
public boolean matchRecipient(MailAddress recipient) {
//邮件地址必须包含hello的
if (recipient.getUser().indexOf("hello")!=-1) {
return true;
}
return false;
}

}


下一步将代码打包配置到执行Mailet的james mail server,找到james-2.2.0\apps\james\SAR-INF\config.XML
<spoolmanager>
...
加入
<mailetpackages>
<mailetpackage>org.apache.james.transport.mailets</mailetpackage>
<mailetpackage>package com.gdsean</mailetpackage>
</mailetpackages>
<matchERPackages>
<matcherpackage>org.apache.james.transport.matchers</matcherpackage>
<matcherpackage>package com.gdsean</matcherpackage>
</matcherpackages>
<mailet match="HelloMatcher" class="HelloMailet">
</mailet>
假如自己的域名是test.com,那么发送个邮件到helloworld@test.com,
mailet就会在后台输出一句”hello world”了.

上一篇: 彻底明白Java的IO系统(文摘)---JAVA之精髓IO流
下一篇: 猛虎出山 —— Java 5.0的新语言特性

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名
注册