请各位设计模式高手指点!

各位达人:
我最近有这样一个需求,需要做一个工资管理模块.里面有个功能是晋级的.
晋级的条件是动态的,写在数据库里的.比如可能的晋级条件有
1.至2008工作年限满30年,今年自动晋升一档次
2.在同一级别连续干2年,自动晋升一档次
3.在同一职务上干5年,自动提升该职务对应级别的一个级别(比如厅长可能对应4,5,6三个级别,如果是6级,则提升到5级);
....
条件很多,而且可能动态增删的.我想了想,有点象防火墙的控制访问列表.
我最开始想用修饰器模式,后来想了想,这个方式不行.因为晋级条件是动态的,而且数目众多.
我想问的问题是,设计到动态匹配时,采用什么模式好.
---------请大家指点迷津,我就要动手编码了,还是一片茫然.
[该贴被ukong于2008-01-11 12:04修改过]

动态过滤器,可以参考JiveJdon中对帖子输出的动态过滤器模式,通过后台管理界面可以动态加入JavaBean过滤器,可以定制Javabean中字段的值,这些非常适合算法之类的动态管理。

如果需要对Javabean的方法进行定制,则考虑AOP。

Java已经进入一个动态组件的阶段。

今天查了些资料,说可以利用规则引擎,不知道bq大哥说的跟这是不是一回事情呢

两个不同方向:
我提供的是一种能够灵活扩展的具体架构技术,可能和java语言平台有关,和你这个具体业务无关。
而规则引擎则是和业务相关的重用技术,当然如果规则引擎+动态组件技术将十分完美和Cool