如何在不命名类/类型的情况下动态解析方法 getter 及其值



我正在使用java bean的接口。大多数时候,这个接口产生的方法对我来说已经足够了。

但是我经常需要访问此接口的实现。

这里的问题是我只有一个字符串键来访问已实现的 java bean 的特定属性。

问题

在我的运行时中,我有以下值为successPage的字符串变量。 然后我有一个界面Content.此接口不会产生名为getSuccessPage()但它的一个实现Formular做到了。

我想做什么

我想对这些方法使用某种动态解析。请参阅此伪代码:

Content content;
String foundValue = propertyResolver.getDynamicValue("successPage", content, String.class)
// this should ultimately call Formular.getSuccessPage() and return it's value

如您所见,我不必告诉该方法具体实现将具有哪种类型。因为我无法明确告诉运行时实际使用的实现类型。


我已经听说过反射并自己使用它。但我也听说过SpringPropertyResolver类。我尝试使用它们,但无法理解它们的 API,搜索结果也无法清除我的视线。

我会使用apache commons PropertyUtils。

String foundValue = PropertyUtils.getProperty(content, "successPage").toString();

最新更新