------- android培训、java培训、期待与您交流! ----------
JavaBean
可以认为JavaBean是一种命名规则,可以实现对象中方法与数据的分离,主要用于传递数据信息,特别是用于获取私有数据。如果要在两个模块之间传递信息,可以将这些信息封装到一个JavaBean中,这种JavaBean的实例对象,通常称之为值对象(Value Object,简称VO)。这些信息在类中用私有字段来存储,如果读取或设置这些字段的值,则需要通过一些相应的方法来访问。
书写格式为:1)必须有无参构造函数(一些类中没有无参构造器,javabean的一些功能就无法使用)。2)属性必须私有,我们称为字段3)提供标准的getter和setter
JavaBean属性名JavaBean的属性是根据其中的setter和getter方法来确定的,而不是根据其中的成员变量。如果方法名为setId,中文意思即为设置id。如果方法名为getId,中文意思即为获取id。去掉set前缀,剩余部分就是属性名,如果剩余部分的第二个字母是小写的,则把剩余部分的首字母改成小的,如果第二个字母为大小,则属性名就是剩余部分。setId()的属性名idisLast()的属性名lastsetCPU的属性名是CPUgetUPS的属性名是UPS
ReflectPoint可以为是一个javabean类。
package cn.itcast.day1;
import java.util.Date;
public class ReflectPoint {
private int x;
public int y;
public int getX() {
return x;
}
public int getY() {
return y;
}
public void setX(int x) {
this.x = x;
}
public void setY(int y) {
this.y = y;
}
public ReflectPoint(int x,int y){
super();
this.x = x;
this.y = y;
}
}
总之,一个类被当作javaBean使用时,JavaBean的属性是根据方法名推断出来的,它根本看不到java类内部的成员变量。所以JavaBean中属性名,不是数据在类中对应的名称。
内省
JDK中提供了对JavaBean进行操作的一些API,这套API就称为内省。用内省这套api操作JavaBean比用普通类的方式更方便。内省是通过反射来实现对javabean操作的技术。
属性描述器
PropertyDescriptor 描述 Java Bean 通过一对存储器方法导出的一个属性。
通过此类的某一方法,可获得属性的getter和setter方法。
PropertyDescriptor的常用方法
getReadMethod()
获得应该用于读取属性值的方法
//创建pt1.getClass()的属性描述器对象
PropertyDescriptor pd =
new PropertyDescriptor(propertyName,pt1.getClass());
//获取读取X的方法
Method methodGetX = pd.getReadMethod();
//获取x在pt1中的值
Object retVal = methodGetX.invoke(pt1);
getWriteMethod()
获得应该用于写入属性值的方法
PropertyDescriptor pd2 =
new PropertyDescriptor(propertyName,pt1.getClass());
//获取写入x的方法
Method methodSetX = pd2.getWriteMethod();
methodSetX.invoke(pt1,5);
Introspecctor
为通过工具学习有关受目标 Java Bean 支持的属性、事件和方法的知识提供了一个标准方法。字面意思可理解为类省。它提供了操作javabean的方法。
BeanInfo
提供有关其 bean 的方法、属性、事件等显式信息。可认为javabean对象被当做javabean看待的结果。
内省练习
采用遍历BeanInfo的所有属性方式来查找和设置某个RefectPoint对象的x属性。在程序中把一个类当作JavaBean来看,就是调用IntroSpector.getBeanInfo方法, 得到的BeanInfo对象封装了把这个类当作JavaBean看的结果信息。
//获取BeanInfo
BeanInfo beanInfo = Introspector.getBeanInfo(pt1.getClass());
//从beenInfo中获取pt1.getClass()的所有属性描述器
PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors();
for(PropertyDescriptor pd:pds){
if(propertyName.equals(pd.getName())){
//根据属性描述器获取属性的读取方法
Method methodGetX = pd.getReadMethod();
retVal = methodGetX.invoke(pt1);
break;
}
}
------- android培训、java培训、期待与您交流! ----------
相关推荐
NULL 博文链接:https://840198532-qq-com.iteye.com/blog/1490903
利用Javabean、servlet、jsp实现用户添加、修改、删除
进销存系统:JSP+javabean进销存系统:JSP+javabean进销存系统:JSP+javabean进销存系统:JSP+javabean进销存系统:JSP+javabean进销存系统:JSP+javabean进销存系统:JSP+javabean进销存系统:JSP+javabean
JavaBean简介 什么是JavaBean? JavaBean的三个组成部分 JavaBean的基本特征 BeanInfo接口 JavaBean的开发模式 使用JavaBean开发应用程序 EJB简介
提供json转javabean和javabean转json的方法
在本实例中分别创建了保存商品信息的JavaBean---GoodsSingle和工具JavaBean---MyTools和实现购物车的JavaBean---ShopCar。
一个基于JAVABEAN的BBS系统!
根据数据表结构自动生成javabean,需JDK1.7以上版本
自动生成Javabean的Excel工具
javabean(DB)javabean(DB)
登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+...
一、实验目的 1.熟悉JavaBean的开发过程。 2.掌握Servlet的开发过程。 二、实验学时 2H 三、实验性质 综合性实验
Javabean的介绍,不懂的看看 最初,JavaBean的目的是为了将可以重复使用的软件代码打包标准。特别是用与帮助厂家开发在综合开发环境(IDE)下使用的java软件部件。这些包括如Grid控件,用户可以将该部件拖放到开发...
Jsp+JavaBean教程讲述了jsp+javaBean的开发
一个JavaBean的小示例,帮助熟悉学习Javabean的使用,实现了一个简单的交互。
JavaBean课件.rar JavaBean课件.rar
Jsp中利用JavaBean技术实现分页功能 Jsp中利用JavaBean技术实现分页功能
Javabean写入文件,文件读出为Javabean
jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序 简单实用供初学者参考
简易通过的java和javabean互换