BeanUtils工具包下载及应用

Sun公司的内省API过于繁琐,所以Apache组织结合很多实际开发中的应用场景开发了一套简单、易用的API操作Bean的属性—BeanUtils,在Beanutil中可以直接进行类型的自动转换。

 

BeanUtil工具包下载:

  1,登录http://commons.apache.org/beanutils/

  2,  点击Download

  3, 点击Commons BeanUtils 1.8.3-bin.tar.gz进行下载就OK了

使用BeanUtil

在项目中导入commons-beanutils-1.8.3.jar包即可

BeanUtil的应用

    Beanutils工具包的常用类:

         1,BeanUtils

         2,PropertyUtils

         3,ConvertUtils.regsiter(Converter convert, Class clazz)

         4,自定义转换器

   在这里我举了几个不同的实例:

  

Java代码   收藏代码
  1.   实例1代码:  
  2.   public void test1() throws Exception {  
  3.         // 加载类  
  4.         Class cls = Class.forName("cn.csdn.beanutil.Student");  
  5.         // 创建对象  
  6.         Student bean = (Student) cls.newInstance();  
  7.         // 通过beanutil给name属性赋值  
  8.         BeanUtils.setProperty(bean, "name""wangli");  
  9.         Object obj = BeanUtils.getProperty(bean, "name");  
  10.         System.out.println(obj);  
  11.     }  
  12.        实例2代码:  
  13. public void test2() throws Exception {  
  14.         Date da = new Date();  
  15.         // 加载类  
  16.         Class cls = Class.forName("cn.csdn.beanutil.Student");  
  17.         // 创建对象  
  18.         Student bean = (Student) cls.newInstance();  
  19.         // 通过Beanutil给属性赋值  
  20.         BeanUtils.setProperty(bean, "birthday", da);  
  21.   
  22.         System.out.println(bean.getBirthday());  
  23.   
  24.     }  
  25.       实例3代码:  
  26. public void test4() throws Exception {  
  27.         //创建对象  
  28.         Student bean = new Student();  
  29.         //通过ConvertUtils自动转换日期类型  
  30.         ConvertUtils.register(new DateLocaleConverter(), Date.class);  
  31.         //通过BeanUtils给属性赋值  
  32.         BeanUtils.setProperty(bean, "birthday""2003-10-30");  
  33.         //执行  
  34.         System.out.println(bean.getBirthday());  
  35.     }  
  36. 实例4代码:  
  37.   
  38.         //自定义转换器  
  39.   
  40. public void test5() throws Exception{  
  41.         //创建对象  
  42.         Student bean = new Student();  
  43.         //通过ConvertUtils自定义转换日期类型  
  44.         ConvertUtils.register(new Converter() {  
  45.             public Object convert(Class type, Object value) {  
  46.                 if (value == null) {  
  47.                     return null;  
  48.                 } else {  
  49.                     //定义日期格式  
  50.                 SimpleDateFormat sdi = new SimpleDateFormat("yyyy-MM-dd");  
  51.                     Date dt = null;  
  52.                     try {  
  53.                         dt = sdi.parse((String) value);  
  54.                     } catch (ParseException e) {  
  55.                         //抛出异常  
  56.                     throw new ConversionException("日期格式转化不对.....");  
  57.                     }  
  58.                     return dt;  
  59.                 }  
  60.             }  
  61.         }, Date.class);  
  62.         //通过BeanUtils给属性赋值  
  63.         BeanUtils.setProperty(bean, "birthday""1990-13-33");  
  64.         //执行  
  65.         System.out.println(bean.getBirthday());  
  66.     }  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值