您的位置:首页 > 编程语言 > Java开发

java反射机制

2016-03-31 20:03 369 查看
http://www.cnblogs.com/absfree/p/5277665.html

使用ReflectUtils工具类使用如下:

/**
* 遍历current,查看每个current下的RevenueSubDetail,如果发现RevenueSubDetail下的属性值为0.00的话,将属性改为0
*
* @param rsd
要访问的RevenueSubDetailDto类实例
* @return 修改RevenueSubDetail属性之后的RevenueSubDetailDto
* @author 王帆
*/
private RevenueSubDetailDto updateAttributeOfRevenueSubDetail(RevenueSubDetailDto rsd) {
if (rsd != null && rsd.getData() != null && rsd.getData().isEmpty() == false) {
for (RevenueSubDetail c : rsd.getData()) {
for (RevenueSource revenueSource : RevenueSource.values()) {
try {
String s = (String) ReflectUtils.getGetterMethod(RevenueSubDetail.class, revenueSource.getTag())
.invoke(c);
if (s.trim().equals("0.00")) {
ReflectUtils.getSetterMethod(RevenueSubDetail.class, revenueSource.getTag()).invoke(c, "0");
}
} catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
log.warn("get revenue exception", e);
}
}
}
return rsd;
} else {
return rsd;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: