如何使用带点运算符的字符串访问嵌套的Java成员变量值

时间:2019-10-23 16:58:09

标签: java json reflection

如果我们有

之类的课程
class A{
    private B b;

    //getter & setter
}

class B{
    private C c;
    //getter and setter
}

class C{
    private String d="hello";
    private Map<String,String> e = new HashMap<>();
//getter and setter
}

如果我们要编写如下所示的函数,是否有任何现成的框架?

public void test( A a){
    String result = getValue(a, "b.c.d");//result should be equal to "hello"
}

要使框架复杂化,它还应该能够处理类似以下内容的提取:

String result = getValue(a, "b.c.e.f");//result should be able to fetch value from Map 'e' for key 'f'

我知道是否可以将A序列化为JSON,那么我认为我们有一些易于使用的API,但是有什么方法可以不将序列化为JSON,我们仍然可以使用反射来进行此查找?

0 个答案:

没有答案