我开始大量使用Java注释。一个例子是使用注释方法并将它们转换为基于'telnet'的命令行命令。我这样做是通过解析注释并挂钩到jopt选项解析器。
但是,我手动做了很多这些。例如,Method参数注释处理..
Method method = ... //;
Class[] parameters = method.getParamterTypes();
Annotation[][] annotations = method.getparamterAnnotations();
for( int i = 0; i < parameters.length; i++ )
{
// iterate through the annotation , see if each param has specific annotation ,etc.
}
这是多余和乏味的。
是否有任何帮助处理注释的开源项目?
答案 0 :(得分:6)
我们使用它来寻找特定的注释:
for (Field field : clazz.getDeclaredFields()) {
if (field.isAnnotationPresent(MyAnnotation.class)) {
field.setAccessible(true);
String fieldName = field.getName();
Object fieldValue = field.get(myObj);
field.setAccessible(false);
}
}
答案 1 :(得分:1)
任何项目都包含完全相同的样板代码。你为什么不自己动手做?
我确定你可以使用ASM:
答案 2 :(得分:0)