BeanUtils 提供了对于JavaBean进行各种操作, 比如对象,属性复制等等。
1.创建一个实体类
package commons;
public class User {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
2.创建一个测试类
package commons;
import java.lang.reflect.InvocationTargetException;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.beanutils.BeanUtils;
public class TestUser {
public static void main(String[] args){
//创建一个user对象,用来作为被克隆的对象
User user = new User();
user.setName("csc");
user.setAge(24);
try {
//1.克隆
User user2 = (User) BeanUtils.cloneBean(user);
System.out.println(user2.getName()+" >>> "+ user2.getAge());
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
Map<String,Object> map = new HashMap<String,Object>();
map.put("name", "csc1");
map.put("age", 27);
User u = new User();
try {
//2.将一个Map对象转化为一个Bean
//这个Map对象的key必须与Bean的属性相对应
BeanUtils.populate(u, map);
System.out.println(u.getName()+" >>> "+ u.getAge());
//3.将一个Bean转化为一个Map对象
Map<String,String> mapbean = BeanUtils.describe(u);
for (Map.Entry<String, String> entry : mapbean.entrySet()) {
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
//key= class and value= class commons.User 再次转化没问题。
User us = new User();
BeanUtils.populate(us, mapbean);
System.out.println(us.getName()+" >>> "+ us.getAge());
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
}
}
3.运行结果
- 大小: 10.4 KB
分享到:
相关推荐
Apache Commons BeanUtils是Apache软件基金会的一个开源项目,它提供了一组实用工具类,用于简化JavaBean对象的操作。这个库的核心是`org.apache.commons.beanutils`包,其中包含了大量的辅助方法,使得开发者可以...
Java工具类是开发过程中不可或缺的一部分,它们提供了许多实用的功能,帮助开发者提高代码的效率和可维护性。Apache Commons Lang和BeanUtils是两个非常著名的Java工具库,由Apache软件基金会开发和维护。这两个库...
BeanUtils 是 Apache Commons 中的一个工具类,提供了对于 JavaBean 进行各种操作的功能,如克隆对象、属性复制等等。通过使用 BeanUtils,可以轻松地将一个 JavaBean 转换为另一个 JavaBean,并且可以将一个 Map ...
Apache Commons是Java开发中不可或缺的一部分,它提供了一系列实用的工具类和组件,极大地丰富了Java标准库的功能。...因此,深入学习和理解Apache Commons工具集是每个Java开发者必备的技能之一。
Apache Commons BeanUtils是Java开发中的一个非常重要的工具包,它属于Apache软件基金会的Commons项目。这个工具包提供了大量方便的API,极大地简化了JavaBean对象之间的属性操作,尤其是在处理复杂的对象模型和数据...
Apache Commons BeanUtils是Java开发中的一个实用工具库,主要用于简化对JavaBean的操作。这个`commons-beanutils-1.9.3.jar`文件是该库的一个版本,它提供了丰富的API来帮助开发者更方便地处理JavaBean对象。在这个...
Apache Commons BeanUtils是...总的来说,Apache Commons BeanUtils是Java开发中的一个强大工具,它可以提高代码的可读性和可维护性,减少重复代码,提高开发效率。在处理JavaBean属性操作时,这是一个值得依赖的库。
### Apache Commons工具集简介 #### 一、Apache Commons概述 Apache Commons是一套为Java开发者提供的开源工具库,它由一系列经过验证的、可重用的Java组件构成,旨在解决日常开发中的常见问题,并提高开发效率。...
Beanutils 模块提供了用于操作 Java Beans 的便捷工具类。Java Beans 是遵循特定设计模式的 Java 对象,通常用于属性的封装和数据传递。Beanutils 提供了属性的反射访问,使得你可以轻松地设置和获取 Bean 的属性值...
1. **BeanUtils**: Apache Commons BeanUtils 提供了对JavaBean进行操作的便捷方法,包括对象的克隆、属性复制等。如示例代码所示,`BeanUtils.cloneBean()`可以用于创建JavaBean的一个深拷贝,而`BeanUtils....
Apache Commons 是一个由Apache软件基金会开发的Java库集合,它为Java程序员提供了许多实用工具类,简化了常见的编程任务。这个"Apache Commons API.rar"压缩包包含五个关键的Apache Commons子项目的API文档,分别是...
1. **commons-collections-2.1.1.jar**:这是Apache Commons Collections库的一个版本,提供了大量的集合处理工具类,包括列表、映射、堆栈、队列等高级数据结构,以及对集合的各种操作和转换方法。 2. **commons-...
通过查看源代码,可以深入理解内部的工作机制,以及如何有效地利用这些工具类。 `commons-collections-3.2.2.jar`是Apache Commons Collections库,它是Java集合框架的扩展,提供了丰富的集合操作和算法。在...
Apache Commons Lang库提供了大量用于处理Java语言特性的工具类。文档中提到了许多组件,例如: - **StringUtils**:提供了处理字符串的常用方法,如判断字符串是否为空、大小写转换、字符串查找、去除空白等。 - **...
它提供了许多有用的工具类和方法,例如 CollectionUtils、ArrayUtils 等等。 使用示例: ```java // 举一个简单的例子 Collection coll = new ArrayList(); coll.add("a"); coll.add("b"); coll.add("c"); // 使用...
在构建基于 Spring 或 Struts 的应用程序时,这些工具类库更是不可或缺。 在学习和使用这些 jar 包时,建议先了解每个模块的主要功能,根据实际需求选择合适的组件,然后通过查阅官方文档或相关教程,掌握其使用...
1. **Apache Commons BeanUtils** - `commons-beanutils-1.9.3.jar` Apache Commons BeanUtils库是用于处理JavaBeans的工具类库。它提供了一种简单的方式来操纵JavaBean属性,无需直接调用getter和setter方法。这个...
8. **Net**:Apache Commons Net 提供了网络编程所需的工具类和协议实现,如FTP、SMTP、Telnet等,便于开发者构建网络应用。 9. **Proxy**:Apache Commons Proxy 提供了动态代理的实现,使得在运行时创建和管理...
Apache Commons BeanUtils库是Java开发中广泛使用的工具集,主要用于处理JavaBean对象的属性操作。这个库提供了一系列简便的方法,使得开发者能够轻松地进行对象属性的读取、设置以及复制等操作,极大地提高了开发...
Apache Commons 是一个由 Apache 软件基金会维护的开源项目集合,它提供了许多Java实用工具类,以增强Java标准库的功能。这些jar包是开发者在处理常见编程任务时的得力助手,涵盖范围广泛,包括数据结构、网络通信、...