Java反射:根据方法名动态调用方法,解决商品动态属性取值问题。

public class Goods{

   private String goodsName;

   private String attr1;

   private String attr2;

   private String attr3;

   private String attr4;

           .........

   private String attr20;

     setter/getter方法

}

在数据库表goods中,已知该商品的属性个数N(满足:N=5,attr1—attr5有值,attr6-attr20为空)。问如何取出每个商品的属性值:

方法一:

取出20属性值

String attr1=goods.getAttr1();

String attr2=goods.getAttr2();

........

String attr20=goods.getAttr20();

 

方法二:

用反射根据方法名字取值
attr= goods.getDeclaredMethod("attr" +i);

 

 

涉及的反射知识,请自行查阅其他资料,这里只提供动态商品属性取值的方案。

 

posted on 2014-09-24 21:51  淡&静  阅读(729)  评论(1编辑  收藏  举报

导航