java - 是否有任何开源库可以获取java bean的getters的所有值?

标签 java javabeans

Java代码:

class X {
    private String aaa;

    String getAaa() {
        return aaa;
    }

    void setAaa(String aaa) {
        this.aaa = aaa;
    }

    public static void main(String[] args) {
         X x = new X();
         x.setAaa("hello");

         // how to populate the property names and values from instance 'x'?
         Map<String, Object> nameAndValues = someUtil.getPropertyNameAndValues(x);

         // it will be:
         // aaa -> hello
    }
}

虽然我们可以获取到所有的getter方法,通过手动反射调用,但是不知道有没有开源库已经提供了这个功能?

最佳答案

考虑使用 Introspector在 java.bean 包中

示例代码

for (PropertyDescriptor pd:
     Introspector.getBeanInfo(bean.getClass()).getPropertyDescriptors())
{
      pd.getReadMethod();

  }

关于java - 是否有任何开源库可以获取java bean的getters的所有值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20628558/

相关文章:

java - 为什么 ArrayDeque 不重写 equals() 和 hashCode()?

java - 打开新 Activity 而不丢失父 Activity

java - 在一定范围内找到 gcd 并更新

javabeans - 30 秒定期任务轮询外部 Web 服务和缓存数据

jsf - @PreDestroy 从未调用过@ViewScoped

java - JGoodies 绑定(bind)与 JSR 295

java - Java 中无法将 int 转换为 string

java - 该用户未与受信任的 SQL Server 连接相关联

java - 使用 XMLDecoder 读取文档文件是否安全?

java - S4 启动 PE 时数组索引越界