zoukankan      html  css  js  c++  java
  • beanutil常用的方法

    Apache Common BeanUtil是一个常用的在对象之间复制数据的工具类,著名的web开发框架struts就是依赖于它进行ActionForm的创建。

        BeanUtil最常用的类是org.apache.commons.beanutils.BeanUtils。
    
        BeanUtils最常用的方法为:
    
        1.   public void copyProperties(java.lang.Object dest, java.lang.Object orig)
     把orig中的值copy到dest中.
    
        2.   public java.util.Map describe(java.lang.Object bean)
     把Bean的属性值放入到一个Map里面。
    
        3.   public void populate(java.lang.Object bean, java.util.Map properties)
     把properties里面的值放入bean中。
    
        4.   public void setProperty(java.lang.Object bean, java.lang.String name, java.lang.Object value)
     设置Bean对象的名称为name的property的值为value.
    
        5.   public String getProperty(java.lang.Object bean, java.lang.String name)
    
               取得bean对象中名为name的属性的值。
    
        详细的使用方法可以参见官方网站:
    
        http://jakarta.apache.org/commons/beanutils/
    
    
    

    Apache Common BeanUtil的常见使用场景

    <!--[if !supportLists]-->1.     <!--[endif]-->同类之间不同对象要求进行数据复制。
    
    
    User user1 = …;
    User user2 = …;
    BeanUtils. copyProperties(user2,user1);
    <!--[if !supportLists]-->2.     <!--[endif]-->不同类不同对象之间的数据复制。
    
    
    UserForm userForm = …;
    User user = …;
    BeanUtils. copyProperties(user, userForm);
    相信经常使用struts的人,一定会很熟悉上面的代码。
    这是一个典型把页面的value object数据复制到domain object的例子。
    
    <!--[if !supportLists]-->3.     <!--[endif]-->对象数据和Map之间互相转化。
    
    User user = …;
    Map userMap = BeanUtils.describe(user);
    Map userMap = …;
    User user = …;
    BeanUtils.populate(user,userMap);
         Map可以看成一个动态数据容器,作为VO很适合在不同层之间传播数据,作为PO也可以动态存储字段信息,
    合理运用可以减少程序很多修改和维护工作。所以让bean和map之间方便的进行数据填充,非常必要。
    
  • 相关阅读:
    微信小程序wx.uploadFile 上传文件 的两个坑
    小程序 滚动wx.pageScrollTo
    scss定义全局变量引入sass-resources-loader报错
    mac 创建多个全局Path
    《node.js开发指南》partial is not defined的解决方案
    jq 将translate的旋转角度转为数值
    js浮点金额计算精度
    移动端页面弹窗滚动,页面也随之滚动解决方案
    js 禁止右击保存图片,禁止拖拽图片
    小程序md5加密
  • 原文地址:https://www.cnblogs.com/myjava1/p/7718002.html
Copyright © 2011-2022 走看看