4

是否有任何 java 库允许我利用 BeanUtils 之类的属性访问bean.prop1.prop2,同时允许访问 getter/field 本身的注释?

例如,我有一个如下所示的 bean 类:

public class Child {
  @SomeCustomAnnotation
  private String name;
  //standard bean getter setters
  }

public class Parent {
  private Child child;
  //standard bean getter setters
}

而且我希望不仅能够检索我正在寻找的属性的值,而且还能够检索在该字段上注释的任何注释,该字段的值被返回:

String childsName = SomeLibrary.getValue(parent, "child.name");
Annotation[] annotationsOnChildsName = SomeLibrary.getAnnotations(parent, "child.name");

是否存在允许这两种功能的库?我可以使用 Commons BeanUtils 对值进行纯属性访问,并使用普通反射来获取属性的注释,但似乎没有一种方法可以结合这两种能力。

4

1 回答 1

3

除非我遗漏了一些东西,否则你可以只使用反射的Field

Field f = Parent.class.getField("name");
Object value = f.get(parent);
f.getAnnotations();
于 2011-11-02T14:37:05.970 回答