1.作用域

PropertyDescriptor中文叫属性描述器,是jiava JavaBean的内省与BeanUtils库

JavaBean是一种特殊的类,主要用于传递数据信息,这种类中的方法主要用于访问私有的字段,且方法名符合某种命名规则。如果在两个模块之间传递信息,可以将信息封装进JavaBean中,这种对象称为“值对象”(Value Object),或“VO”。方法比较少。这些信息储存在类的私有变量中,通过set()、get()获得。

Java JDK中提供了一套API用来访问某个属性的getter/setter方法,这就是内省。

JAVA反射机制中操作或者获取私有属性(必须有get/set方法)的《java JavaBean》类,也就是我们常说的VO类,例如:

public class TestClass{private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}
}

2. PropertyDescriptor JDK内省类库:

PropertyDescriptor类:(属性描述器)
  PropertyDescriptor类表示JavaBean类通过存储器导出一个属性。主要方法:
  1. getPropertyType(),获得属性的Class对象;
  2. getReadMethod(),获得用于读取属性值的方法;
  3. getWriteMethod(),获得用于写入属性值的方法;
  4. hashCode(),获取对象的哈希值;
  5. setReadMethod(Method readMethod),设置用于读取属性值的方法;
  6. setWriteMethod(Method writeMethod),设置用于写入属性值的方法。

3. 其他和PropertyDescriptor 相关的类或者工具包

1. Introspector类: 将JavaBean中的属性封装起来进行操作 得到 BeanInfo

2. BeanInfo操作PropertyDescriptor

3. BeanUtils包

  <dependency><groupId>commons-beanutils</groupId><artifactId>commons-beanutils</artifactId><version>1.9.4</version></dependency>

4.使用方法


import java.beans.IntrospectionException;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Method;/*** @author zeng* @since 2022/6/21*/
public class MainApp {public static void main(String[] args) throws IntrospectionException {final PropertyDescriptor descriptor = new PropertyDescriptor("name",TestClass.class);final Class<?> type = descriptor.getPropertyType(); //获取属性的class对象System.out.println(type.getTypeName());// java.lang.Stringfinal Method readMethod = descriptor.getReadMethod();//获得用于读取属性值的方法;System.out.println(readMethod.getName());// getNamefinal Method witeMethod = descriptor.getWriteMethod();//获得用于写入属性值的方法;System.out.println(witeMethod.getName());// setName//  设置读写方法就不过多介绍了,太麻烦,如果不会需要使用请@我}class TestClass{private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}}
}

java PropertyDescriptor的用法相关推荐

  1. 四种Java线程池用法解析

    四种Java线程池用法解析 本文为大家分析四种Java线程池用法,供大家参考,具体内容如下 http://www.jb51.net/article/81843.htm 1.new Thread的弊端 ...

  2. 2020-12-17 【 java优先队列的用法】

    java优先队列的用法 peek是top() 只取最上面的元素 poll是pop() 弹出 add是添加 push 类的比较器,相对于仿函数 struct cmp{ bool operator ()( ...

  3. java中import用法

    java中import用法 单类型导入(single-type-import),例如import java.io.File; 按需类型导入(type-import-on-demand),例如 impo ...

  4. java.nio.ByteBuffer用法小结

    转载自  java.nio.ByteBuffer用法小结 在NIO中,数据的读写操作始终是与缓冲区相关联的.读取时信道(SocketChannel)将数据读入缓冲区,写入时首先要将发送的数据按顺序填入 ...

  5. Java Spring IOC用法

    Java Spring IOC用法 Spring IoC 转载于:http://www.cnblogs.com/flowwind/p/4772375.html 在前两篇文章中,我们讲了java web ...

  6. 设计模式--模板方法模式--Java实现-- java访问控制关键字用法

    1.什么是模板方法 2.具体实现步骤 5.优缺点 6适用场景 java访问控制关键字用法 – protected的解释 (1)私有的:用关键字private修饰,只有本类可见. (2)默认的:不用访问 ...

  7. Java List相关用法

    Java List相关用法 1. subList 2. Queue接口 3. Deque接口 4. List常用算法 5. Collections.sort方法 6. Comparator接口 1. ...

  8. 设计模式 - 观察者模式(Observer Pattern) Java内置 用法

    观察者模式(Observer Pattern) Java内置 用法 本文地址: http://blog.csdn.net/caroline_wendy/article/details/26601659 ...

  9. 简明介绍java“包”的用法

    简明介绍java"包"的用法 1. "包"的建立 "包"与文件夹对应,例如:package yanwu与文件夹yanwu对应. 程序wuha ...

最新文章

  1. leetcode算法题--连续的子数组的和
  2. tcp三次握手为啥不是4次
  3. HTTPS(身披SSL协议的HTTP)
  4. 两个Long类型真的不能直接用或比较么?其实可以
  5. 机器信息MachineInfo
  6. dabs是什么意思_cpdd是什么意思(网络语cpdd是什么梗啥意思)
  7. 漫步ASP.NET MVC的处理管线
  8. SQL Server2016 新功能之SQL安装篇
  9. java第一次作业0
  10. CSS 样式里面的逗号和空格之间的区别
  11. react 逆地理 高德地图_给高德新版地图点赞!出行服务竟然如此智能
  12. 【离散数学】集合论 第三章 集合与关系(1) 集合的概念与表示
  13. 视易服务器查看硬盘状态,Linux服务器使用Smartmontools检测硬盘状况 | 厘米天空
  14. 你只管打开这个网站,剩下的交给「卧槽」!
  15. 运动步数抽奖小程序开发
  16. 狼性的华为,是否有人性?
  17. matlab让legend横着排,echarts画一个饼图, orient: 'horizontal',图例横向排列,当图例比较多时,如何在第二排让图标一一对齐?...
  18. base64 string类 放不下_千夜空的推荐 | LOFTER(乐乎) - 让兴趣,更有趣
  19. 《狂人日记》 词语解释 | 经典语录
  20. 分布式进阶(十九) 基于集群的动态反馈负载均衡策略

热门文章

  1. #早安,努力#10.27
  2. MSN用户免费领取卡巴斯基反病毒软件2010半年激活码.
  3. 喝普洱熟茶时的八大禁忌您知道吗?
  4. C# SaveFileDialog使用
  5. oracle 默认escape_ORACLE中ESCAPE关键字用法
  6. 基于 word2vec 商城推荐系统的设计与实现
  7. 10国内著名的IT论坛
  8. windows 安装scoop踩坑之旅
  9. 万神终极封测大场面截屏
  10. 360和QQ怎么选很简单的吧?!