Java SE(二)
来源:互联网 发布:开淘宝网店不交保证金 编辑:程序博客网 时间:2024/05/17 04:34
内省(Introspector)
为什么要学内省?
开发框架时,经常需要使用java对象的属性来封装程序的数据,每次都使用反射技术完成此类操作过于麻烦,所以sun公司开发了一套API,专门用于操作java对象的属性。
什么是Java对象的属性和属性的读写方法?
内省访问JavaBean属性的两种方式:
通过PropertyDescriptor类操作Bean的属性
通过Introspector类获得Bean对象的 BeanInfo,然后通过 BeanInfo 来获取属性的描述器( PropertyDescriptor ),通过这个属性描述器就可以获取某个属性对应的getter/setter 方法,然后通过反射机制来调用这些方法。
内省是 Java 语言对 Bean 类属性的一种缺省处理方法。例如类 A 中有属性 name, 可以通过 getName,setName 来得到其值或者设置新的值。通过 getName/setName 来访问 name 属性,这是默认的规则。 Java 中提供了一套 API 来访问某个属性的 getter/setter 方法。
一般的做法是通过类Introspector 来获取某个对象的BeanInfo 信息,然后通过BeanInfo 来获取属性的描述器(PropertyDescriptor ),通过这个属性描述器就可以获取某个属性对应的 getter/setter 方法,然后通过反射机制来调用这些方法
内省—beanutils工具包
Sun公司的内省API过于繁琐,所以Apache组织结合很多实际开发中的应用场景开发了一套简单、易用的API操作Bean的属性——BeanUtils
Beanutils工具包的常用类:
BeanUtils
PropertyUtils
ConvertUtils.regsiter(Converter convert,Class clazz)
- Java SE(二)
- Java SE学习笔记(二)
- Java se 7新特性研究(二)
- 【Java SE学习札记】 (二)
- Java SE 学习笔记(二)
- 二、JAVA SE基础视频02
- Java SE基础知识点总结(二)
- Java SE面试题(二)
- java se
- Java SE
- java se
- java se
- java se
- JAVA SE
- JAVA SE
- Java SE 6 新特性系列之二 HTTP 增强
- java SE 线程(二) 线程的控制
- Java SE学习(二)数组与字符串、数据类型转
- python用urllib2处理超时的经历
- linux嵌入式系统开发之触摸屏---驱动篇(下/源码分析) .
- 2012年JavaEE+Android培训视频教程
- android Vibrator震动效果
- c文件操作简单应用——fscanf()
- Java SE(二)
- C++随机数产生
- ARM-Linux驱动-触摸屏驱动分析 .
- android listview仿iphone特效
- ASP 简单的登录界面 9-18
- 【hdoj】题目分类
- 最长公共子序列空间优化算法
- 面向切面编程
- Struts的简单使用