通过反射对任意class类中方法赋值的方式
Posted bin-zhao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过反射对任意class类中方法赋值的方式相关的知识,希望对你有一定的参考价值。
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import java.lang.reflect.Method;
@Component
public class SetPlatformUtils {
private static final CoreServiceType c = CoreServiceType.getInstance();
public void setVal(Object obj, String methodName, String platform){
//获取obj代表的实体类class对象
Class clazz = obj.getClass();
Method method = null;
try {
//获取class对象中的指定的方法
method = clazz.getMethod(methodName, String.class);
//给方法赋值
if (StringUtils.isBlank(platform)){
method.invoke(obj,c.CODE.get("1"));
}else{
method.invoke(obj, c.CODE.get(platform));
}
}
catch (Exception e) {
logger.error("存储二级分类的反射工具类出错,obj:{},methodName:{},platform:{},",obj,methodName,platform);
}
}
}
以上是关于通过反射对任意class类中方法赋值的方式的主要内容,如果未能解决你的问题,请参考以下文章