`

Java基础六:apache的Beanutils简单使用对JavaBean操作的封装

阅读更多
/**
 * apache的Beanutils简单使用
 * 
 * @author 张明学
 * 
 */
public class BeanUtilsStudy {

	public static void main(String[] args) throws Exception {
		PersonBean pbean = new PersonBean("java", 12);
		pbean.setP("P属性");
		// 定义几个属性名称
		String propertyP = "p";
		String propertyName = "name";
		String propertyAge = "age";
		Object returnValue = null;
		// **************getProperty与setProperty方法:获取与设置JavaBean的属性**************
		// 获取p属性值
		returnValue = BeanUtils.getProperty(pbean, propertyP);
		System.out.println(returnValue);
		// 获取name属性值
		returnValue = BeanUtils.getProperty(pbean, propertyName);
		System.out.println(returnValue);
		// 设置p属性值
		BeanUtils.setProperty(pbean, propertyP, "C++");
		System.out.println(pbean.getP());
		// 设置age属性值
		BeanUtils.setProperty(pbean, propertyAge, 24);
		System.out.println(pbean.getAge());
		// 可以自动帮我们进行类型转换
		BeanUtils.setProperty(pbean, propertyAge, "25");
		System.out.println(pbean.getAge());
		// birthday类型的java.util.Date类,下面这样写在它在定义的是必须要实例化birthday
		// java.util.Date有一个setTime()方法可以看作JavaBean
		BeanUtils.setProperty(pbean, "birthday.time", new Date().getTime());
		System.out.println(pbean.getBirthday());

		// **************copyProperties方法:将一个JavaBean的属性copy到另一个JavaBean中**************
		// PersonBean2是PersonBean的子类
		PersonBean2 pb2 = new PersonBean2();
		// 将pbean的属性值copy到pb2属性
		BeanUtils.copyProperties(pb2, pbean);
		System.out.println(pb2.getName());

		// **************describe方法:将javaBean转换成Map对象************** \\
		Map beanMap = BeanUtils.describe(pbean);
		for (Object key : beanMap.keySet()) {
			System.out.println(key + "=" + beanMap.get(key));
		}

		// **************populate方法:将Map中的值设置到javaBean对象************** \\
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("name", ".NET");
		map.put("age", 32);
		map.put("p", "PPP");
		BeanUtils.populate(pbean, map);
		System.out.println(pbean.getName() + "\t" + pbean.getAge() + "\t"
				+ pbean.getP());

		// 还有一个PropertyUtils
		returnValue = PropertyUtils.getProperty(pbean, propertyName);
		System.out.println(returnValue);
		PropertyUtils.setProperty(pbean, propertyAge, 21);
		System.out.println(pbean.getAge());
		// PropertyUtils.setProperty(pbean, propertyAge, "21");不能自动进行类型转换

	}
}

 其中用的JavaBean如下:

public class PersonBean {
	private String name;
	private int age;
	private Date birthday = new Date();
	private String x;
	public PersonBean() {
	}
	public PersonBean(String name, int age) {
		this.name = name;
		this.age = age;
	}
	public String getP() {
		return x;
	}
	public void setP(String p) {
		this.x = p;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public Date getBirthday() {
		return birthday;
	}
	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}

 

public class PersonBean2 extends PersonBean {
	private String address;

	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

}

 

分享到:
评论
2 楼 slaser 2010-05-31  
这个东西也算java基础?
1 楼 mp_juan 2010-05-31  
建议楼主自己看java.lang.reflect包的API,然后使用reflect自己实现..

相关推荐

    org.apache.commons.beanutils.jar

    总结来说,Apache Commons BeanUtils是Java开发中的得力助手,它极大地提高了处理JavaBean对象的效率,减少了代码的冗余,同时也为处理复杂的数据操作提供了便利。通过使用这个库,开发者可以更专注于业务逻辑,而非...

    apache BeanUtils

    Apache BeanUtils是Apache Commons项目中的一个模块,它提供了一组工具类来简化JavaBean操作。在Java开发中,BeanUtils库极大地提高了开发效率,尤其是在处理对象属性的设置、获取以及复制等方面。以下是对Apache ...

    java 包commons-beanutils-1.9.2-bin

    Commons BeanUtils是Apache软件基金会开发的一个Java库,它提供了一系列工具方法,用于简化JavaBean对象的属性操作。这个"commons-beanutils-1.9.2-bin"压缩包包含了该库的可执行版本,适用于Java开发者在项目中方便...

    commons-beanutils-1.9.3.jar

    Apache Commons BeanUtils是Java开发中的一个实用工具库,主要用于简化对JavaBean的操作。这个`commons-beanutils-1.9.3.jar`文件是该库的一个版本,它提供了丰富的API来帮助开发者更方便地处理JavaBean对象。在这个...

    beanutils 的jar包

    Apache Commons BeanUtils库正是为了解决这些问题而诞生的,它提供了简单易用的API,极大地简化了JavaBean的操作。本文将深入探讨BeanUtils的核心功能及使用方法。 BeanUtils是Apache Commons项目的一部分,它的...

    commons-beanutils快速封装form表单数据包

    Apache Commons BeanUtils是Java开发中一个非常实用的工具库,主要功能是简化对象与JavaBean之间的操作,包括属性的设置、获取以及复制等。在处理Web应用中的表单数据时,它能帮助开发者高效地将HTTP请求参数映射到...

    javabeanbeanutils

    JavaBean和BeanUtils是Java开发中的重要概念,尤其在企业级应用开发中广泛使用。Apache Commons项目中的BeanUtils库提供了方便的工具类,简化了JavaBean的处理工作。本篇文章将深入探讨JavaBean、BeanUtils以及相关...

    beanutils源码

    Apache BeanUtils是一个强大的Java工具库,它为开发者提供了方便的方式来操作JavaBeans,使得在对象之间复制属性、处理事件以及创建动态Bean变得简单易行。这个库是Apache软件基金会Jakarta项目的一部分,它基于...

    beanutils-1.8.3开发包

    BeanUtils包的核心概念是JavaBeans,这是一种遵循特定设计模式的Java类,主要用于封装数据和提供简单的操作方法。它通过getter和setter方法来访问和修改对象的属性。BeanUtils库则提供了一种便利的方式来操作这些...

    commons-beanutils-1.8.3

    总的来说,Apache Commons BeanUtils 1.8.3是Java开发中一个不可或缺的工具,它简化了对JavaBeans的操作,提高了代码的可读性和维护性。无论是在大型企业级应用还是小型项目中,熟练掌握BeanUtils的使用都能大大提高...

    commons-beanutils

    这个库的核心功能在于提供了一种简单、直观的方式来操作Java对象的属性,使得开发者可以更方便地进行数据绑定和对象之间的属性拷贝。在本文中,我们将深入探讨`commons-beanutils.jar`包及其源码,了解其工作原理,...

    commons-beanutils-1.8.0.7z

    《自动封装JavaBean:深入理解Apache Commons BeanUtils》 在Java开发中,处理JavaBean对象的属性设置和获取是一项常见的任务。Apache Commons BeanUtils库提供了一种便捷的方式来操作JavaBean,使得开发人员能够...

    Java基础_第二阶段-day18每日作业卷答案1

    在Java开发中,BeanUtils工具类是Apache Commons库中的一个组件,它提供了一种方便的方式来操作JavaBean的属性,简化了对象属性的设置和获取。本篇将深入讲解BeanUtils工具类的使用及其在实际编程中的应用。 1. **...

    Java基础_第二阶段-day18每日作业卷1

    在Java开发中,`BeanUtils`工具类是一个非常重要的辅助工具,它来自于Apache Commons Lang库,主要用于处理JavaBean对象的属性操作。在Java基础的第二阶段,掌握BeanUtils的使用对于提升开发效率至关重要。以下是...

    beanutils JAR包下载

    首先,BeanUtils库是Apache Commons项目的一部分,它提供了一组方便的API,使得开发者可以更加简洁地操作JavaBeans的属性。JavaBeans是一种遵循特定规范的Java类,通常包含getter和setter方法,用于封装数据。...

    beanutils-1.9.3jar包

    Apache Commons BeanUtils是Java开发中的一个实用工具库,主要用于处理JavaBeans对象,提供了一组方便、灵活的方法来操作JavaBean的属性。这个"beanutils-1.9.3.jar"包是Apache Commons BeanUtils库的一个特定版本,...

    BeanUtils jar包+源码

    在Java开发中,BeanUtils是一个非常重要的工具包,主要用于处理JavaBeans对象的属性操作。它提供了许多便捷的方法,使得开发者可以方便地进行属性的设置、获取以及复制等操作,极大地提高了开发效率。BeanUtils来自...

    commons-beanutils.jar

    在Java应用中,JavaBean扮演着数据载体的角色,BeanUtils则提供了对这些载体进行操作的工具。 Apache Commons BeanUtils库包含的核心功能有: 1. **属性复制(Property Copying)**:BeanUtils最著名的功能就是...

    commons-beanutils-1.8.0

    Apache Commons BeanUtils是Java开发者们广泛使用的工具库之一,尤其在处理JavaBean对象时,它的功能强大且高效。这个开源项目由Apache软件基金会维护,旨在简化JavaBean的属性访问和操作。在本文中,我们将深入探讨...

    commons-beanUtils-src

    Apache Commons BeanUtils是Java开发中常用的一个工具库,主要用于简化JavaBean对象的操作。它提供了大量的方法来帮助我们处理JavaBean属性的读写,以及对象之间的复制等任务。这个开源项目是Apache软件基金会下的 ...

Global site tag (gtag.js) - Google Analytics