[code="java"][/code] import java.beans.BeanInfo;
import java.beans.IntrospectionException;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
public class BeanInfoTest {
public int getA(){
return 1;
}
public static void main(String[] args) {
try {
BeanInfo bi =Introspector.getBeanInfo(BeanInfoTest.class, Object.class);
PropertyDescriptor pd[] = bi.getPropertyDescriptors();
for(PropertyDescriptor prodes:pd){
System.out.println(prodes.getName());
System.out.println(prodes.getReadMethod());
System.out.println(prodes.getWriteMethod());
}
} catch (IntrospectionException e) {
e.printStackTrace();
}
}
}
附件是结果,它竟然帮我找到了property a。
我比较好奇的问题是,我明明没有定义a这个字段的。难道反射的时候都是通过找到getXX setXX方法来判断是不是有这个属性吗?感觉这也太不合适了。还是说这样只是为了让所有权在我们手上,让我们使用规范的bean。提供完整的set get方法和字段?还望知道的人告知一二,
相关推荐
swingx-beaninfo-1.6.2-2.jar
官方版本,亲测可用
2. **BeanInfo类**:在`java.beans`包中,`BeanInfo`类是一个关键接口,它提供了关于JavaBean的元信息,包括默认的属性、事件和方法的描述,以及自定义的外观和行为。`openbean.jar`可能包含了对这些BeanInfo类的...
OpenBeans是Apache软件基金会的一个项目,它包含了实现JavaBeans规范的一些类和接口,比如`BeanInfo`接口。`BeanInfo`接口在JavaBeans中扮演着重要的角色,它提供了关于Bean元数据的信息,包括默认的属性值、事件...
2. **实现BeanInfo类**:为 `MyCustomPrompter` 创建一个对应的 BeanInfo 类,描述其属性和事件信息。这一步对于让 Visual Editor 正确识别和操作自定义控件至关重要。 3. **调色板扩展**:接下来需要将 `...
//import java.beans.BeanInfo; //import java.beans.IntrospectionException;...使用openBeans.jar 方案能解决此问题。import 的包需要改一下。改成import com.googlecode.openbeans.BeanInfo。 解决
// 依据 Bean 产生一个相关的 BeanInfo 类 BeanInfo bInfoObject = Introspector.getBeanInfo(beanObj.getClass(), beanObj.getClass().getSuperclass()); // 定义一个用于显示的字符串 String output = ""; ...
这个类在Spring源码中扮演着一个重要的角色,主要目的是解决与`Introspector`相关的内存泄漏问题。首先,我们需要理解`Introspector`在Java中的作用。 `Introspector`是Java标准库`java.beans`包下的一个类,它的...
在示例中,为了将Map转换为TestDO对象,可能需要创建一个`PropertyDescriptor`来处理`nodeDO`属性,并利用`PropertyEditor`进行转换。 4. **Introspector**: `Introspector`类是java.beans包的关键部分,它负责从...
其中,`BeanInfo`类是一个关键组件,它提供了关于Bean的元数据信息,包括属性、事件、方法以及默认的外观和行为设置。在Android开发中,如果需要利用这些功能,就需要寻找替代方案,例如引入`openbeans.jar`。 `...
4. **Bean的复制**:BeanUtils类提供了copyProperties方法,可以方便地将一个Bean的属性复制到另一个Bean上。 5. **定制化BeanInfo**:允许开发者自定义BeanInfo类,以提供更详细的Bean元数据,增强Bean的行为和...
在android studio 中无法使用 BeanInfo,IntrospectionException,Introspector, PropertyDescriptor 这些类,只需要导入这个jar 库就可以了。 只不过,要把java.beans.BeanInfo; 替换为 ...
7. **BeanInfo类**:对于更复杂的自定义行为,开发者可以创建一个与JavaBean关联的BeanInfo类。这个类可以提供关于属性、事件和方法的额外元数据,甚至覆盖默认的行为。 8. **容器支持**:JavaBeans可以被Java应用...
为了方便地将XML文档转换为Java对象,以及将Java对象序列化为XML,Apache软件基金会提供了一个名为Betwixt的库。本篇文章将深入探讨如何使用Betwixt库实现XML与Java类之间的互转解析。 首先,我们需要理解Betwixt的...
"Presenting Java Beans"可能还会讨论BeanInfo类,这是一个可选的接口,用于提供关于Java Bean的元数据,如自定义的属性编辑器和图标。通过BeanInfo,开发者可以扩展默认的行为,而不必修改原始的Bean类。 在提供的...
对于JavaBean,简单的来说,就是要有一个空参的构造器和对属性的getXXX方法和setXXX方法。 在由JDK提供的默认的API中,有java.beans包,里面有诸如Introspector,BeanInfo,PropertyDescriptor等用来操作JavaBean的...
这是一个已知的问题,通常发生在com2java.exe图形用户界面长时间打开并多次更改设置时。为了避免这种问题,应该按照J-Integra技术支持的指导操作。 在教程内容中,还包括创建应用程序、向窗口添加STKX控件、发送...
Java中的Apache Commons Betwixt库提供了一个简单的方法来映射Java Bean对象和XML文档之间的数据,使得在处理数据交换时能轻松地实现bean到XML的转换和XML到bean的反转换。本篇文章将深入探讨如何使用Commons ...
`javaBeans`是Java编程中的一个关键概念,它遵循一套特定的设计规范,主要用于创建可重用的软件组件。JavaBeans帮助文档通常会包含以下方面的内容: 1. **属性**:JavaBeans通常包含一组公开的属性,这些属性代表了...