我有一个带有 getter 和 setter 的类:
class A
{
private Set<Offers> offers;
public Set<Offers> getOffers(){
return offers;
}
public void setOffers(Set<Offers> offers){
this.offers = offers;
}
}
现在我想使用 Apache Commons PropertyUtils 获取报价的 size():
PropertyUtils.getProperty(myAInstance, "offers.size");
这应该基本上与以下内容相同:
myAInstance.getOffers().size();
但是使用 PropertyUtils 不起作用并给了我一个:
java.lang.NoSuchMethodException:类'class java.util.LinkedHashSet'上的未知属性'size'
对其他对象的所有 getter 和 setter 使用 PropertyUtils 工作正常。
我怀疑这是因为 Collection 的 size() 方法没有遵循 getXXX 和 setXXX bean 约定。
还有其他方法可以使用 PropertyUtils / 或 BeanUtils(或 Apache Commons 中的其他任何东西)来调用我的集合的 size() 方法吗?
谢谢克里斯托夫