JavaBeans事实上有三层含义。首先,JavaBeans是一种规范,一种在Java(包括JSP)中可重复使用的Java组件的技术规范,也可以说成我们常说的接口。其次,JavaBeans是一个Java的类,一般来说,这样的Java类将对应于一个独立的 .java文件 ,在绝大多数情况下,这应该是一个public类型的类。最后,当JavaBeans这样的一个Java类在我们的具体的Java程序中被实例之后,这就是我们面向对象的对象,我们有时也会将这样的一个JavaBeans的实例称之为JavaBeans。总之,就是Java中的接口、类和对象。
什么是BeanUtils工具
BeanUtils工具是一种方便我们对JavaBean进行操作的工具,是Apache组织下的产品。
BeanUtils工具一般可以方便javaBean的哪些操作?
1)beanUtils 可以便于对javaBean的属性进行赋值。
2)beanUtils 可以便于对javaBean的对象进行赋值。
3)beanUtils可以将一个MAP集合的数据拷贝到一个javabean对象中。
前提:约定前提: 参数名称 需要和javabean的属性名称保持一致!!!!
同时导入commons-beanutils 包 与 commons-logging 包
package com.test; import java.lang.reflect.InvocationTargetException; import org.apache.commons.beanutils.BeanUtils; public class TestBeanUtils { public static void main(String[] args) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException, InstantiationException { Person p1 = new Person(); // 1.用于设置或者读取属性 BeanUtils.setProperty(p1, "name", "张三"); BeanUtils.setProperty(p1, "age", 11); System.out.println(BeanUtils.getProperty(p1, "name")); System.out.println(BeanUtils.getProperty(p1, "age")); // 2.用于复制对象的所有属性 Person p2 = new Person(); BeanUtils.copyProperties(p2, p1); System.out.println(BeanUtils.getProperty(p2, "name")); System.out.println(BeanUtils.getProperty(p2, "age")); // 3.用于克隆对象 Person p3 = (Person) BeanUtils.cloneBean(p2); System.out.println(BeanUtils.getProperty(p3, "name")); System.out.println(BeanUtils.getProperty(p3, "age")); } }