`

转载:BeanUtils & PropertyUtils & MethodUtils类使用方法

    博客分类:
  • Java
阅读更多
BeanUtils & PropertyUtils & MethodUtils类使用方法
http://www.blogjava.net/Alpha/archive/2010/05/10/320475.html
import java.util.Map;   
import org.apache.commons.beanutils.MethodUtils;   
import org.apache.commons.beanutils.PropertyUtils;   
  
public class TestPropertyUtils {   
       
    public static void main(String[] args) throws Exception{   
           
        Entity entity = new Entity();   
           
        //通过PropertyUtils的getProperty方法获取指定属性的值   
        Integer id = (Integer)PropertyUtils.getProperty(entity, "id");   
        String name = (String)PropertyUtils.getProperty(entity, "name");   
        System.out.println("id = " + id + "  name = " + name);   
           
        //调用PropertyUtils的setProperty方法设置entity的指定属性   
        PropertyUtils.setProperty(entity, "name", "心梦帆影");   
        System.out.println("name = " + entity.getName());   
           
        //通过PropertyUtils的describe方法把entity的所有属性与属性值封装进Map中   
        Map map = PropertyUtils.describe(entity);   
        System.out.println("id = " + map.get("id") + "  name = " + map.get("name"));   
           
        //通过MethodUtils的invokeMethod方法,执行指定的entity中的方法(无参的情况)   
        System.out.println( MethodUtils.invokeMethod(entity, "haha", null) );   
           
        //通过MethodUtils的invokeMethod方法,执行指定的entity中的方法(1参的情况)   
        MethodUtils.invokeMethod(entity, "sayHelle", "心梦帆影");   
           
        //通过MethodUtils的invokeMethod方法,执行指定的entity中的方法(多参的情况)   
        Object[] params = new Object[]{new Integer(10),new Integer(12)};   
        String msg = (String)MethodUtils.invokeMethod(entity, "countAges", params);   
        System.out.println(msg);   
           
    }   
  
}  
分享到:
评论

相关推荐

    Bean复制的几种框架性能比较(Apache BeanUtils、PropertyUtils,Spring BeanUtils,Cglib BeanCopier

    但是,Cglib的使用相对复杂,需要预先知道源Bean和目标Bean的类信息,且不支持Java 8的默认方法。 综合来看,Apache BeanUtils和PropertyUtils适合简单的Bean复制,它们易于理解和使用,但在大规模复制时性能不佳。...

    commons-beanutils-1.9.4-API文档-中文版.zip

    赠送jar包:commons-beanutils-1.9.4.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    Tomcat&Beanutils&用户登录案例.rar

    综上所述,"Tomcat&Beanutils&用户登录案例.rar"这个资源包涵盖了Web应用服务器基础、对象属性操作工具以及实际开发中的用户认证案例,对于Java Web开发者来说,是一个宝贵的自学和实践资料。通过学习和实践,开发者...

    commons-beanutils-1.9.4.jar.zip

    8. **线程安全性**:在多线程环境中,BeanUtils库的部分方法是线程安全的,这意味着它们可以在并发环境下使用而无需额外的同步措施。 9. **与其他Apache Commons库的集成**:BeanUtils可以很好地与Apache Commons...

    beanutils源码

    2. **核心类分析**:重点关注`org.apache.commons.beanutils`包下的类,如`BeanUtils`、`PropertyUtils`和`ConvertUtils`等,理解它们的功能和实现方式。 3. **反射机制的运用**:深入`java.lang.reflect`包,研究...

    commons-beanutils-1.7.0-API文档-中英对照版.zip

    使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

    commons-beanutils-1.9.4-API文档-中英对照版.zip

    使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

    commons-beanutils-1.8.0

    5. **方法调用**:`MethodUtils`类提供了动态调用Java对象方法的功能,包括静态方法和实例方法,这在处理不确定的方法名或参数时非常有用。 6. **异常处理**:BeanUtils在处理JavaBean操作时,通常会捕获并包装可能...

    apache BeanUtils

    BeanUtils还提供了`PropertyUtils.copyProperties()`方法,这是一个预防性的拷贝,它会检查目标bean是否有setter方法,避免因缺少setter而引发的异常。 8. 集合属性处理: BeanUtils可以处理集合属性,如List、Set...

    BeanUtils jar包+源码

    3. **类型转换**:BeanUtils内部使用了`PropertyUtils`类来处理属性的类型转换,当源对象和目标对象的属性类型不一致时,它会尝试进行自动类型转换。然而,这种转换并不总是成功,对于一些复杂类型的转换,可能需要...

    commons-beanutils-1.8.0.zip

    1. **PropertyUtils**:这个类是BeanUtils的核心,提供了静态方法来操作JavaBean的属性。你可以通过PropertyUtils.getProperty()来获取属性值,用PropertyUtils.setProperty()来设置属性值。它支持链式属性访问,...

    beanutils包

    5. **集合操作**:BeanUtils还支持对集合类的操作,如列表和数组,可以方便地将集合中的元素映射到JavaBeans对象的属性上。 在网络框架中,BeanUtils的作用尤为重要: - **模型绑定**:在网络框架中,通常需要将...

    beanutils-1.9.3jar包

    1. **PropertyUtils**: 这是BeanUtils库中最核心的部分,提供了对JavaBean属性操作的一系列静态方法。如`getProperty()`用于获取属性值,`setProperty()`用于设置属性值,以及`describe()`用于获取JavaBean的所有...

    BeanMapper:比BeanUtils.copyProperties更快

    一个BeanUtils.copyProperties的小型快速替代。 起因 由于BeanUtils(Spring或Apache Commons)的copyProperties实现是利用反射实现的,它在大量调用时具有比较严重的性能问题。 BeanMapper通过javassist类库实现在...

    BeanUtils相关jar包

    在导入jar包后,记得在代码中引入相关类,并按照上述示例进行使用。 总之,Apache Commons BeanUtils是Java开发中的得力助手,通过其提供的各种方法,开发者可以更高效地处理Bean对象,进行属性的复制、初始化以及...

    JavaBean和beanutils工具类的学习

    `getProperty()`和`setProperty()`方法展示了如何通过反射和PropertyDescriptor类直接访问和修改属性,而BeanUtils和PropertyUtils的使用则更加简洁。 总之,JavaBean和BeanUtils工具类的结合使用极大地提高了代码...

    beanutils 的jar包

    本文将深入探讨BeanUtils的核心功能及使用方法。 BeanUtils是Apache Commons项目的一部分,它的主要目标是提供一套便捷的工具方法,用于处理JavaBean对象。JavaBean是一种遵循特定设计规范的Java类,通常包含公共的...

    commons-beanutils-1.7.0-API文档-中文版.zip

    赠送jar包:commons-beanutils-1.7.0.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    commons-beanutils-1.9.4

    在本文中,我们将深入探讨`commons-beanutils-1.9.4`这个版本,了解其核心功能、使用场景以及如何在项目中集成和应用。 Apache Commons BeanUtils库的主要目标是简化JavaBean对象的属性访问。它通过提供一系列静态...

Global site tag (gtag.js) - Google Analytics