使用beanUtils操纵javabean

------------beanUtils框架-------
除了八种基本类型外,其他的要注册ConvertUtils转换器

public void test5() throws Exception {
	   Map map=new LinkedHashMap();	
	   map.put("name", "aaa");
	   map.put("age", "22");
	   map.put("birthday", "2012-12-12");
		ConvertUtils.register(new DateLocaleConverter() , Date.class);
        Person p=new Person();
        BeanUtils.populate(p, map);//--------------------------
        System.out.println(p.getName());
        System.out.println(p.getAge());
        System.out.println(p.getBirthday());
}


public void test3() throws Exception {
		Person p = new Person();
		String birthday = "1992-12-06";
		// 为了让日期赋值到bean的birthday属性上,我们给beanUtils注册一个转换器
		ConvertUtils.register(new Converter() {

			@Override
			public Object convert(Class type, Object values) {

				if (values == null)
					return null;
				 if (!(values instanceof String)) {
					throw new ConversionException("只支持String类型");
				}
			String str=	(String)values;
			 if(str.equals(""))
					return null;
			 SimpleDateFormat  df=new SimpleDateFormat("yyyy-MM-dd");
			 try {
				return df.parse(str);
			} catch (ParseException e) {
				// TODO Auto-generated catch block
				throw new RuntimeException(e);
			}
			}
		}, Date.class);	

		BeanUtils.setProperty(p, "birthday", birthday);// 只支持基本数据类型
		System.out.println(p.getBirthday());

	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值