PropertyDescriptor类 初接触
来源:互联网 发布:阿里巴巴双十一数据 编辑:程序博客网 时间:2024/06/06 07:42
用到的场景:在写推送MQ消息的时候,想一个sendMessage 类去 推送不同的 队列名。
首先用一个Constant类存放了不同的MQ的推送的队列名字 是用@value注入的,里面有多个队列名字,其实对应着这个Constant不同的属性。现在就是将这些队列名字对应的属性通过一个键值(可以在数据库中加个字段,也可以前端交互)存放到一个Map中去,在调用这个类的时候,循环map取出队列名对应的 属性名字的字符串(注意,这里是属性名字的字符串,并不是这个属性的值)。所以就要用到反射机制的PropertyDescriptor去根据这个属性名字的字符串去得到属性的值(这里就是要推送的队列名)
一、一个简单的PropertyDescriptor类的例子
packagetestPoi;
importjava.beans.PropertyDescriptor;
importjava.lang.reflect.Method;
publicclass TestPropertyDescriptor {
publicstatic void main(String[]args) {
Personperson = newPerson();
person.setName("zhangsan");
person.setAge(18);
getFiled(person,"name");//结果输出 zhangsan
}
// 通过反射得到name
// 可以看到这是通过 得到 属性的get方法(pd.getReadMethod()) 再调用invole方法取出对应的属性值
//同样得到set方法(pd.getWriteMethod())
privatestatic void getFiled(Objectobject, Stringfield) {
Class<?extendsObject> clazz = object.getClass();
PropertyDescriptorpd = null;
MethodgetMethod = null;
try{
pd= new PropertyDescriptor(field,clazz);
if(null!= pd) {
// 获取 这个 field 属性 的get方法
getMethod= pd.getReadMethod();
Objectinvoke = getMethod.invoke(object);
System.out.println(invoke);
}
}catch (Exception e) {
e.printStackTrace();
}
}
}
阅读全文
0 0
- PropertyDescriptor类 初接触
- PropertyDescriptor 类
- PropertyDescriptor
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包
- PropertyDescriptor 详解
- 类和对象初接触
- 黑马程序员--Java基础加强--10.【PropertyDescriptor操作JavaBean VS 反射操作Java类】【个人总结】
- Java使用PropertyDescriptor获取实体类中私有属性的值,并给私有属性赋值
- PropertyDescriptor的使用
- JavaAPI之PropertyDescriptor
- propertyDescriptor.getReadMethod笔记
- Java中PropertyDescriptor用法
- 初接触Tomcat
- .Net Assembly初接触
- 消息初接触
- Webwork2初接触
- 消息初接触
- python初接触
- 微信小程序开发(5)-新闻页之滚动制作(scroll-view)组件的使用
- DDL-数据定义语言
- Gerrit日常操作命令收集
- 使用git管理代码,mac看不到生成的.git文件
- 算法第四版 练习1.3.35
- PropertyDescriptor类 初接触
- Spring容器中Bean的作用域
- 客户端界面加载优化
- mac系统top命令说明
- linux idle 进程 init进程 Shell的基本概念
- POJ-2349-Arctic Network [最小生成树]
- 蝉
- 关于 MAC 下解压文件乱码的问题
- cookie 使用