【发布时间】:2016-09-27 19:31:59
【问题描述】:
我有许多方法的类,其中一些用注释标记。每个方法都可以有很多注解,比如
@StepAnnotation(name="Action1" )
@SequenceAnnotation(name="transactionA" sequenceID="5")
public void doSomeStuff() {
//Perform some stuffs here, calling API or performing some DB actions
}
我们有一个基于步骤的执行引擎,每个步骤都有一个相应的带注释的方法或方法列表,它们为引擎提供执行该特定步骤所需的输入。有时,我们有一个序列,而不是一个步骤,它基本上是一个步骤列表,带有一个用于复杂输入的 id。这些步骤将根据 id 进行排序并由该引擎执行。
使用反射,我构建了一个方法索引,这些方法需要在运行时为一系列步骤或特定序列调用。我扫描类,获取带注释的方法,然后构建索引并根据测试输入调用它们。
目前,我使用Map<String , Method> 存储步骤,使用Map<String , List<Method>> 存储序列。
我想知道,是否有任何好的数据结构来存储上述数据。什么数据结构对存储/迭代和检索相同的步骤/序列都有好处?
【问题讨论】:
-
数据结构的 DS。编辑了问题。
标签: java data-structures object-oriented-analysis