获取 bean 对象属性方法

@Test
public void testBeanInfo() throws IntrospectionException, InvocationTargetException, IllegalAccessException {
BaseVo param = new BaseVo();
param.setCode(111);
param.setMessage("success");

Map<String, Object> map = Maps.newConcurrentMap();

BeanInfo beanInfo = Introspector.getBeanInfo(param.getClass());
PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();
for (PropertyDescriptor property : propertyDescriptors) {
String key = property.getName();
// 过滤class属性
if (!key.equals("class")) {
// 得到property对应的getter方法
Method getter = property.getReadMethod();
//获取属性对应的 value
Object value = getter.invoke(param);
//key=bean 属性,value=bean 属性对应的 value
map.put(key, value);
}
}

System.out.println(map);
}
posted @ 2019-12-24 09:31  明天,你好啊  阅读(1485)  评论(0编辑  收藏  举报